Недавно я начал с Угловая, поэтому у меня есть некоторые вопросы.AngularJS как использовать ng-модель внутри настраиваемого тега директивы, устанавливая контроллер динамически?
Моя проблема:
Я создал директиву, в которой я буду использовать во многих «страницах» с различными контроллерами в каждой конкретной ситуации, например.
Теперь я могу настроить контроллер динамически, эта проблема решена!
Но в каждом экземпляре директивы я хочу определить, какая переменная должна быть изменена в контроллере, например, ng-model
. Если я помещаю непосредственно в тег в шаблоне, он работает, но мне нужно его динамически.
ДИРЕКТИВА:
app.directive('mySelectPicker', function() {
var ddo = {};
ddo.restrict = 'E';
ddo.templateUrl = 'js/directives/views/my-select-picker.html';
ddo.scope = {};
ddo.controller = "@";
ddo.name = "controllerName";
return ddo;
});
MY-SELECT-PICKER.HTML:
OBS1: (нг-повтор прекрасно работает со значениями в массиве раз контроллеров) OBS2: Если я поместил ng-model
в тег select, он будет работать, но будет статичным!
<select>
<option value="{{time.value}}" ng-repeat="time in times" >{{time.text}}</option>
</select>
CONTROLLER:
app.controller('MyController', function($scope, moment){
$scope.times = []; //array with the options
$scope.val1 = '';
$scope.val2 = '';
});
ИСПОЛЬЗОВАНИЕ Директиву:
<my-select-picker controller-name="MyController" **ng-model="val1"**></my-select-picker>
<my-select-picker controller-name="MyController" **ng-model="val2"**></my-select-picker>
В резюме, мне нужно определить ng-model
в каждом <my-select-picker>
, чтобы определить, что является переменной в контроллер. Как это возможно?