我想看一些绑定到我的组件的元素。这个值可能会改变(在另一个组件中),因为他进行了异步调用(promise)。
直到现在在JS中我使用$scope.$watch
,当绑定元素改变时,他有一个回调,我可以继续使用元素的值。
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: '='
}
});
问题是如何使用“干净”的typescript语法实现相同的东西(我知道我可以以完全相同的方式注入$ scope并在typescript上实现$scope.$watch
。)
感谢。
答案 0 :(得分:1)
解决方案是使用typescript get&设置
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);
}