У меня есть директива foo
, которую я хочу использовать в другой директиве dropdown
. Проблема в том, что директива dropdown
использует еще одну директиву под названием kendo-drop-down-list
в шаблоне.
Я хочу иметь возможность писать
<dropdown foo>
И результат должен быть
<select data-kendo-drop-down-list options='dropdownOptions' data-ng-model='selected' foo="bar"></select>
Проблема в том, что foo
является необязательным, а это означает, что директива будет использоваться как <dropdown>
, так и <dropdown foo="bar">
.
Как передать атрибуты? Или я что-то не так делаю, так как столкнулся с этой проблемой?
Директива
app.directive('dropdown', function() {
return {
restrict: "AE",
scope: {
selected: "=ngModel",
},
template: "<select data-kendo-drop-down-list data-k-options='dropdownOptions' data-ng-model='selected'></select>",
controller: [
'$scope', function($scope) {
$scope.dropdownOptions = {
dataSource: {
type: "odata-v4",
transport: {
read: {
url: "odata/Products",
dataType: "json",
}
},
serverFiltering: true,
}
};
}
]
};
);
<dropdown foo="bar">
, вы можете просто передать свои данные в свою директиву в свою область действия, например.data: '=foo'
- person DonJuwe   schedule 04.08.2015foo
нужно поставить в шаблон директивыdropdown
- person Snæbjørn   schedule 04.08.2015