我想看一些绑定到我组件的元素。此值可能会更改(在另一个组件中),因为他进行了异步调用(承诺)。
直到现在,在JS中我都使用$scope.$watch
,当绑定元素更改时,他有一个回调,并且我可以继续使用element的值。
JS示例:
$scope.$watch('myCtrl.myLayout', function (newVal, oldVal) {
console.log('Layout is:');
console.log(_this.myLayout);
});
angular.module('blocks.ui')
.component('myForm', {
templateUrl: 'app/blocks/UI/form.html',
controller: myForm,
controllerAs: 'myCtrl',
bindings: {
myLayout: '='
}
});
问题是如何使用“干净的”打字稿语法实现同一件事(我知道我可以注入$ scope并以完全相同的方式在打字稿上实现
$scope.$watch
)。谢谢。
最佳答案
解决方案是使用打字稿获取和设置
private _myLayout:any;
public get MyLayout() {
return this._myLayout;
}
public set MyLayout(newItem: any) {
this._myLayout = newItem;
console.log('Layout is:');
console.log(this.MyLayout);
}
关于javascript - 如何在TypeScript上使用$ scope。$ watch,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38308844/