Я использую функцию datepicker для пользовательского интерфейса UI Bootstrap, и я хотел бы получить одно из значений, переданных в атрибут.Угловые поля директивы не требуют скобок
// JS
$scope.myMaxDate = new Date();
<!-- HTML -->
<input datepicker-popup="MM/dd/yyyy" max-date="myMaxDate" />
Я не понимаю, почему в этом случае max-date
атр принимает строку, а не выражение, как {{myMaxDate}}
. Как он получает реальную ценность?
Более того, я использую декоратор для изменения некоторых данных из этой директивы и хотел бы получить доступ к этому атрибуту, но все, что я получаю, это строка myMaxDate
.
$provide.decorator("datepickerPopupDirective", ["$delegate", function($delegate) {
// get references to the directive and old link function
var directive = $delegate[0];
var link = directive.link;
// create a new link function using compile
directive.compile = function() {
// the new link function we want to return
return function(scope, element, attrs, ngModelCtrl) {
console.log(attrs.maxDate); // 'myMaxDate'
// invoke the old link function
link.apply(this, arguments);
};
};
Ahh спасибо./10char – diplosaurus