我有一个控制器,可以获取数据以填充大型下拉列表:
MySrvc.getData()
.then(function (response) {
$scope.someData = response.data;
});
我还有一个实例化并定义为此类的组件。
<my-component foo='someData'></my-component>
angular.module('mod').component('myComponent', {
bindings: {
foo: '<'
},
controller: function() {
}
});
ngOptions
表示您必须设置ngModel
。我希望数组的第一个元素是选定的对象。 this.selectedElement = this.foo[0]
。问题是,在我知道绑定已更新之前,我实际上无法编写这行代码。
我无法在组件中使用scope.$watch
而this.$onChanges
似乎也无法正常工作。有什么想法吗?
答案 0 :(得分:1)
您可以使用ng-if
<my-component ng-if="someData" foo='someData'></my-component>
如果在元素中添加ng-if
,则指令在数据到来之后呈现
答案 1 :(得分:1)
如果您想在printf "PASSED TESTS: ($passed_tests)\n\n"
for i in "${passed_tests_arr[@]}"
do
printf "✓ "
i=${i%.*}
i=${i#*/ }
echo "$i"
done
上使用观察者,可以使用this.foo
功能。它可以接受函数作为其第一个参数,因此您可以观察特定变量。
尝试:
$scope.$watch
答案 2 :(得分:1)
您必须至少使用角度1.5.3
才能使用$onChanges
。但是你可以像那样使用它
controller: function() {
this.$onChanges = function(){
// your stuff
}
}