Я использую Angularjs 1.7 и пытаюсь передать массив из родительского контроллера в компонент. Как я могу передать arraySteps и selectedSteps компоненту.
Я попробовал следующее, но не сработало.Я не получаю arraySteps в компонентном контроллере
ulMultiselect.component.js
angular.module('ulMultiselect.module').component('ulMultiselect', {
templateUrl: 'app/components/ulMultiselect/ulMultiselect.template.html',
controller: 'ulMultiselect.controller',
bindings: {
arraySteps: '<'
},
transclude: true
});
ulMultiselect.controller.js
angular.module('ulMultiselect.module').controller('ulMultiselect.controller',
function () {
var self = this;
self.$onInit = function () {
if (typeof self.arraySteps === 'undefined') {
self.arraySteps = [];
}
};
});
ulMultiselect.template.html
<div layout="row">
<md-input-container style="width:100%">
<label>Steps</label>
<md-select ng-model="$ctrl.selectedSteps" multiple>
<md-option ng-value="step.StepName" ng-repeat="step in $ctrl.arraySteps">{{step.StepName}}</md-option>
</md-select>
</md-input-container>
</div>
mainTest.html
<ul-Multiselect arraySteps="$ctrl.steps"></ul-Multiselect>
mainTest.controller.js
angular.module('view.mainTest.module').controller('view.mainTest.controller',
function () {
var self = this;
self.$onInit = function () {
self.steps = [{ StepName: "Step1" }, { StepName: "Step2" }, { StepName: "Step3" }];
};
});