Я пытаюсь создать директиву, которая имеет дополнительный «ярлык» для кнопки - если эта метка не поставляется, я хочу это иметь значение по умолчаниюустановки значения по умолчанию для угловой директивы собственности
это это директива
angular.module('myApp')
.directive('myButton',function(){
var ctrl = function ($scope) {
var controller = this;
controller.label = controller.label || 'Save';
console.log("label=",controller.label);
};
return {
replace: true,
restrict: 'E',
scope: {
label: '@?',
},
templateUrl: 'directives/myButton.html',
controller: ctrl,
controllerAs: 'controller',
bindToController: true,
};
});
HTML, в шаблоне это
<md-toolbar>
<div class="md-toolbar-tools">
<span flex></span>
<md-button class="md-raised">{{controller.label}}</md-button>
</div>
</md-toolbar>
и я звоню директиву, как этот
<my-button label="fooBar"></my-button>
это работает - и я вижу этикетку "Foobar" на кнопку, и 'LABEL = Foobar' на консоли
однако, если я не поставить метку
<my-button></my-button>
Кнопка не имеет ярлыка, но я вижу «наклейка = Сохранить» на консоли
что мне не хватает?
благодарит
, кажется, работает, как ожидается, в этом plunker http://plnkr.co/ edit/R7BmHJ3dGKU5Vz6s5T0H? p = preview Я использовал шаблон вместо templateUrl, но не уверен, как это должно измениться. –
да - это так - я не понимаю, почему он не работает в моем приложении. Я использовал параметр компиляции (см. Принятый ответ), и это действительно работало. Все равно, спасибо за помощь. – jmls