Задать вопрос
Valonix
@Valonix
Back end / Front end developer

Angular 1.6.0 onInit как это работает?

Чет я не могу выкупить, если у меня из одного компонента передается инфа,

bindings: {
            item: '=',
        },


пишу
const ctrl = this;

                this.$onInit = function() {
                    ctrl.item = this.item;
                };


пишет что undefined....
Так как теперь это работает ? :)
  • Вопрос задан
  • 1066 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
Изменилось то, что использовать биндинги нельзя в самом теле контроллера.
Они появятся только когда будет вызван $onInit.
Т.е. если вам нужно какое-то значение от биндинга посчитать - нельзя сделать так:
bindings : {
   item: '<'
}
function ctrl() {
    const vm = this;
    vm.coolVal = this.item * 2;
}


Т.к. биндинги ещё не будут инициализированы. Нужно делать это в $onInit.
Ответ написан
@Stepanya
bindings: {
            item: '<'
        },


const ctrl = this;

                this.$onInit = function() {
                    console.log(ctrl.item);
                };


https://jsfiddle.net/jxcj2w79/2/
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы