我试图为我正在制作的测试应用创建一个简单的指令。我的指示如下:
.directive('answer', function(){
return {
restrict: "E",
scope: {
minl: "=",
model: "="
},
template: '<input id="option" name="opts" type="text" ng-model="model" ng-minlength="minl">'
}
})
在我的html文件中,我使用此指令并使用以下代码:
<answer ng-repeat="option in newQuestion.opts" minl="minLength" model="option.value"></answer>
我的控制器范围内有一个minLength属性(等于10),而option.value也有一个范围值。但是,当我加载html页面时,我的模板不会引入这些值中的任何一个。有没有人对我在这里做错了什么有任何建议?
答案 0 :(得分:1)
假设你在控制器上声明了minLength为一个int(NOT指令的控制器),你的代码完全写成Angular。
我已经在plunkr上再创建了它,所以你可以看一下,除了在Controller上声明minLength值之外我没有改变任何东西。的 Plunk, Please notice that I called it on my end minl at the controller. thats the only difference 强>
scope: {
minl: "=",
model: "="
}
是要走的路。
答案 1 :(得分:0)
编写指令范围分配,如下所示:
scope: {
minl: "=myMinl",
model: "=myModel"
}
然后在你的标记中执行此操作:
<answer ng-repeat="option in newQuestion.opts" myMinl="minLength" myModel="option.value"></answer>