Angular错误解析
Angular Error Parsing ng-show
我在index.html中的div上有一个ng-show,它决定根据用户清除显示哪个标头。这些清除存储在$scope.user中。作为清除对象的数组。scope.user美元。清除的结构如下:
[
{
'clearance':string
}
]
导致解析错误的指令是:
<div ng-show = "user.clearance &&
user.clearance.filter(function(e) { return e['clearance'] === 'SUPERADMIN'; }).length > 0"
ng-include="'/partials/components/superadmin-header.html'">
</div>
表达式:
user.clearance && user.clearance.filter(function(e) {
return e['clearance'] === 'SUPERADMIN';
}).length > 0
在jsfiddle: http://jsfiddle.net/6frqzwee/2/
中正常工作你知道为什么angular在这方面有困难吗?
因为ng-show
指令将 $watch
放在您在ng-show
属性上提供的expression
上。如果你将表达式作为string
传递,它将在当前范围内计算它们,但是当你传递带有属性的函数时将抛出$parse
错误。
更好地使它工作,你可以有角过滤器|
,它会给你预期的结果,不会抛出任何错误,而解析HTML
<div ng-show ="user.clearance &&
(user.clearance | filter: {clearance: 'SUPERADMIN' }).length > 0"
ng-include="'/partials/components/superadmin-header.html'">
与上面的语法一样,(user.clearance | filter: {clearance: 'SUPERADMIN' })
将使用作用域进行计算,它将返回具有clearance
属性值与SUPERADMIN
匹配的元素数组。
相关文章:
- Node.js v6.2.0类扩展不是函数错误
- Jquery菜单操作不稳定,定位不正确,存在一般错误
- document.open/document.write没有正确地清除chrome中的文档——这是chrome的错误吗
- 试图在引导模式内动态生成图表,得到offsetWidth错误
- 为什么会出现错误;未捕获的类型错误:undefined不是函数;
- 我如何修复包含在captcha的addthis中的错误
- 同样,同样的错误'ahorcado.js:26未捕获类型错误:无法读取属性'beginPath'
- 节点是否需要模块传递带有方括号的arg?这是个错误吗
- Webpack/Rect:遵循egghead.io教程,但出现错误:您可能需要一个合适的加载程序来处理此文件类型
- CKFinder 3为所选文件返回错误的URL
- 同位素库错误:未捕获错误无布局模式包装生产线8
- 铬:“;未捕获的语法错误:意外的标记:"
- 如何通过自己获得Chrome扩展的用户反馈/错误报告
- 相位器状态未捕获参考错误
- /undefined在我的404错误日志中多次出现
- Javascript未捕获语法错误意外的标识符错误
- javascript:如何在antlr生成的Lexer中进行错误处理
- Angularjs工厂注入错误
- 可以设置“;文件名"发生错误时显示的内联脚本标记的
- 误解或错误使用 JavaScript 的 SetTimeout 函数