Angularjs 角度指令访问控制器-奇怪';未经预订的';消息
我试图编写一个元素指令,将其附加到控制器上,以实现类似排序的行为。这是指令Angularjs 角度指令访问控制器-奇怪';未经预订的';消息,angularjs,angularjs-directive,angularjs-scope,Angularjs,Angularjs Directive,Angularjs Scope,我试图编写一个元素指令,将其附加到控制器上,以实现类似排序的行为。这是指令 .directive('sorting', function () { return { restrict: 'E', scope: false, // I know I can omit this with no effect template: function (elem, attr) { ret
.directive('sorting', function () {
return {
restrict: 'E',
scope: false, // I know I can omit this with no effect
template: function (elem, attr) {
return '<div><a href ng-click="setsort('+"'"+attr.sortkey+"'"+')">'+attr.headtext+'</a></div>'+
'<div ng-show="sortfield=='+"'"+attr.sortkey+"' || sortfield='-"+attr.sortkey+"'"+
'" ng-class="{'+"'sortreverse':sortreverse}"+'">▲</div>';
}
}
});
有趣的事实:错误的第一行实际上是angularjs拼错的(应该是assign
而不是assing
)
最后一行是指令生成的输出的一部分,如下调用:
<sorting sortkey="yn_equivalent" headtext="SomeText"></sorting>
我对Angularjs不是很有经验,所以也许你需要更多的反馈,我很乐意给你
有什么线索吗
谢谢。在您的
ng show
中,OR运算符后的比较缺少等号。您可能应该对这两种情况都使用=
。在ng show
中,OR运算符后的比较缺少等号。对于这两个函数,您可能都应该使用=
。为了可重用性,您应该使用带有&
的隔离作用域来调用父作用域函数。这也将使您从混乱的模板字符串连接中解脱出来。这听起来是一个很好的建议。你能提供一个链接让我看一下吗?这里有一个来自egghead.io的视频为了可重用性,你应该使用带有&
的隔离作用域来调用父作用域函数。这也将使您从混乱的模板字符串连接中解脱出来。这听起来是一个很好的建议。你能提供一个链接让我看一下吗?这是来自egghead.io的视频。如果你选择了答案,我会得到年度最佳盲人的价格。谢谢。三重==
是不必要的。如果您选择了答案,我将获得年度盲板的价格。谢谢。不需要三重==
。
<sorting sortkey="yn_equivalent" headtext="SomeText"></sorting>