javascript angularjs angularjs-directive angularjs-scope angular-directive

javascript - Adición de múltiples opciones de ''requerimiento'' para la directiva angular



angularjs angularjs-directive (1)

Por lo general, en las directivas, uso require: ''ngModel'' si quiero pasarle el alcance. Esto funciona bien. Pero ahora estoy creando una directiva que crea 5 elementos HTML diferentes, cada uno con diferentes ngModels que se pasan desde el padre. Los ngmodels que deben pasarse como atributo son ngModel1, ngModel2, ngModel3, ngModel4, ngModel5 . ¿Cómo agrego múltiples opciones en la condición require dentro de la directiva?

Probé estos y no funciona:

require: [''ngModel1'', ''ngModel2'', ''ngModel3'', ''ngModel4'', ''ngModel5''],

y

require: {''ngModel1'', ''ngModel2'', ''ngModel3'', ''ngModel4'', ''ngModel5''},

y

require: ''ngModel1'', ''ngModel2'', ''ngModel3'', ''ngModel4'', ''ngModel5'',

y

require: ''ngModel1, ngModel2, ngModel3, ngModel4, ngModel5''},

¿Cómo agrego múltiples opciones de requerimiento?

EDITAR:

Código HTML:

<div get-vehicles-checkbox cars-ng-model="formData.cars" bikes-ng-model="formData.bikes" trucks-ng-model="formData.trucks" van-ng-model="formData.van" bus-ng-model="formData.bus" ></div>

Directiva:

app.directive(''getVehiclesCheckbox'', function($compile) { return { restrict: ''A'', replace:true, // require: ? scope: { carsNgModel: ''='', bikesNgModel: ''='', trucksNgModel: ''='', vanNgModel: ''='', busNgModel: ''='' }, controller: ''SomeController'', link: function(scope, element, attrs, carsNgModel, bikesNgModel, trucksNgModel, vanNgModel, busNgModel) { scope.carsNgModel = {}, scope.bikesNgModel = {}, scope.trucksNgModel = {}, scope.vanNgModel = {}, scope.busNgModel = {} var html = ''<span ng-repeat="car in cars">'' + ''<input type="checkbox" ng-model="carsNgModel[car.code]"> {{ car.number }} {{ car.description }}'' + ''</span>'' + ''<span ng-repeat="bike in bikes">'' + ''<input type="checkbox" ng-model="bikesNgModel[bike.code]"> {{ bike.number }} {{ bike.description }}'' + ''</span>''; //.... etc.. etc..... // COMPILE HTML //... .... ... } } });


app.directive(''myDirective'', function() { return { restrict: "A", require:[''^parentDirective'', ''^ngModel''], link: function ($scope, $element, $attrs, controllersArr) { // parentDirective controller controllersArr[0].someMethodCall(); // ngModel controller controllersArr[1].$setViewValue(); } } });