我正在创建一个Angular 1.5组件,并且我停留在某个东西上。我正在通过$onChanges
观察对绑定输入的更改。当我在$onChanges
上调用函数底部的数据时,看起来都不错,但在我看来这并没有改变。
ctrl.$onChanges = function (changesObj) {
if (/* test to see if new data is invalid */) {
ctrl.test = 2;
console.log(2);
// return;
} else {
var newData = changesObj.data.currentValue;
ctrl.test = 1;
console.log(1);
}
};
我已经在if语句中控制台记录测试,并且我得到一堆日志。第一个是正确的,正如预期的那样,但其余的都是错误的。上面的日志是简单的:
2
(8) 1
然而,当我在视图中显示test
,它总是2.我甚至控制台登录在函数的底部ctrl.test
的状态,它的罚款那里,但查看保留2.
有什么我需要做Angular 1.5组件来触发从控制器到视图的更新?它似乎只工作一次,但只有一次?
可能是你可以用你的,如果内$声明应用,使消化周期被调用,它会在视图中立即反映。 – Thangadurai
除了1.5组件本身没有范围,我们鼓励不使用$范围,不是吗?控制器上没有$应用。 – RhoVisions