角指令范围:设定
问题描述:
我创建一个datepicker指令的默认值,其标记的部分是:角指令范围:设定
<select class="form-control" ng-model="day" ng-options="day.nr for day in allDays">
我想在scope
属性这样来定义allDays
:
ehrApp.directive('datePicker', function() {
return {
scope: {
allDays: [
{'nr': 1},
{'nr': 2},
{'nr': 3},
(...)
{'nr': 31}
]
},
但它不起作用,它会因“TypeError:undefined不是函数”而失败。
任何想法如何实现这一目标?
答
您正在定义指令配置的scope
属性内的值,这是您定义指令使用的隔离范围的位置。相反,这样做在那里,做到这一点无论是在你的link
功能或在您的controller
功能:
return {
link : function (scope, element, attrs) {
scope.allDays = [{nr : 1}];
}
}
或
return {
controller : function ($scope, $element) {
$scope.allDays = [{nr : 1}];
}
}