【发布时间】:2016-10-23 15:50:30
【问题描述】:
我有一个向子组件输入项目的根组件:
angular.module('demoApp', ['listing'])
.component('smartComponent', {
templateUrl: 'smartComponent.template.html',
controller: function() {
var self = this;
self.items = [{
id: 1,
text: 'item1'
}, {
id: 2,
text: 'item2'
}];
self.selectItem = function(item) {
console.log('Selected item: ' + JSON.stringify(item));
};
}
})
子组件的项目是单向绑定的:
angular.module('listing', [])
.component('listing', {
templateUrl: 'listing.template.html',
bindings: {
items: '<',
onSelect: '&'
}
});
我可以轻松处理点击以选择带有ng-click 的项目。但我不确定如何处理select 下拉菜单。
<div class="form-group">
<select id="test" class="form-control" ng-change="$ctrl.onSelect({item: item})" ng-model="$ctrl.itemId" ng-options="item.id as item.text for item in $ctrl.items track by item.id" required>
<option value="">---Please select---</option>
</select>
这是一个可以工作的 ng-click 和不工作的选择:http://plnkr.co/edit/lQAhsqvsyjwCRhvkhSuS?p=preview
如何使用select 将项目传递给父组件?谢谢!
【问题讨论】:
标签: angularjs