AngularJS = 作用域中的 = 作用域导致解析语法错误
AngularJS = scope in an = scope causing parse syntax error
我正在尝试使用 Angular 中的指令实现 2 级层次结构。第一个范围venture
传递一个 JSON 创业数组。在每个企业中都有一系列职位。理想情况下,第二个范围拾取此位置对象并将其填充。
app.directive('venture',function(){
return {
restrict: "E",
template: '<div><div ng-show="!ventureshow">{{details.venture_name}}'
+'<positions data="{{details.positions}}" ></positions>'
+'...',
scope: {
details:'='
},
replace: true,
link:function($scope, element, attrs){
}
}
});
app.directive('positions',function(){
return {
restrict: "E",
template:'d<ul ng-repeat="position in details">{{position}}<li>{{position.position_name}}:{{position.position_description}}</li></ul>',
scope:{
data:'='
}
}
})
但是,第二个对象上的等号 (=) 会导致错误$parse:syntax
。似乎无法弄清楚导致问题的原因
双向绑定需要绑定到可以分配给的属性。相反,您通过执行无法分配给data="{{details.positions}}"
来提供插值(除非您在作用域上具有与插值结果相同的属性)。您必须收到不可分配的异常。执行双向绑定时,从绑定中删除{{
插值。
即
template: '<div><div ng-show="!ventureshow">{{details.venture_name}}'
+'<positions data="details.positions" ></positions>'
如果你使用2种方式绑定方式(=),你必须传递给他变量,而不是变量的值,因为和gular指令需要一个变量(place)来改变一些东西,写一些东西。
相关文章:
- 监视函数从服务返回不起作用,但作用域函数起作用
- 将作用域存储在JSON中
- 从控制器继承了隔离的作用域以生成可重用的指令
- 从ng模板访问作用域
- 调用私有作用域
- 对父作用域的指令更新延迟了一步
- 正在$rootScope上达到控制器作用域$在内部控制器上
- 两个指令创建新的继承的和隔离的作用域-元素得到哪个
- 这两个关于 JavaScript 作用域链的例子有什么区别?
- 在具有命名作用域的自定义Polymer元素中隐藏表行
- AngularJS指令隔离作用域
- Angularjs:修改js中的作用域,稍后在页面中使用
- 访问多个指令的隔离作用域
- Javascript作用域和Ajax调用;工作不正常
- AngularJS = 作用域中的 = 作用域导致解析语法错误
- 有角度的“;控制器作为语法”;,传递变量和隔离作用域
- 作用域值到其他作用域值的语法
- 在JS“if”语句参数中,是否有用于声明本地作用域变量的简明语法
- 当使用“作为控制器”时,如何在子控制器中引用父控制器的作用域?语法
- 如何在控制器作为语法中使用带有作用域的离子弹出窗口