Ich habe eine Wurzelkomponente aufrufen, die Elemente zu einem Kind-Komponenten-Eingänge:Wie übergeordnete Komponente mit HTML-select in Angular 1.5
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));
};
}
})
Es ist ein Weg für die untergeordnete Komponente, um die Elemente Bindung:
angular.module('listing', [])
.component('listing', {
templateUrl: 'listing.template.html',
bindings: {
items: '<',
onSelect: '&'
}
});
Ich kann problemlos mit Klicks umgehen, um ein Element mit ng-click
auszuwählen. Aber ich bin mir nicht sicher, wie man ein select
Drop-Down behandelt.
<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>
Hier ist ein Plunker mit einem Arbeits ng klicken und Nicht-Arbeits wählen: http://plnkr.co/edit/lQAhsqvsyjwCRhvkhSuS?p=preview
Wie bekomme ich mit select
ein Element in der übergeordneten Komponente zu übergeben? Vielen Dank!