在 Angular 1.5 中使用“单向绑定”(<)有什么意义
What's the point of having 'one-directional binding' (<) in Angular 1.5?
随着Angular 1.5中组件概念的引入,单向数据绑定(<(也被引入。但是,手册说:
但请注意,父级和组件范围都引用同一对象,因此,如果要更改组件中的对象属性或数组元素,父级仍将反映该更改。因此,一般规则应该是永远不要更改组件作用域中的对象或数组属性。
事实上,在指令/组件作用域中更改对象的属性会反映在父作用域中 - 听起来不像单向绑定,它只会给整个事情增加混乱 - 我们现在有半单向绑定,你最好不要将其用于对象或数组,而对于字符串我们有@。
使用单向数据绑定的有用实际案例方案是什么?或者完全避免它是一个好主意,以保护自己免受意外变化的影响 - 因为单向概念尖叫它是单向的,而事实并非如此?
在@
的情况下,你应该使用插值({{value}}
表达式(将一些值传递给指令:
<my-directive some-value="{{value}}"></my-directive>
和
scope {
someValue: "@"
}
如果是<
绑定,则可以在不进行插值的情况下设置属性值。当 value
的值不undefined
时,它将以隔离作用域为界:
<my-directive some-value="{{value}}"></my-directive>
和
scope {
someValue: "<"
}
当然,someValue 必须是原语,而不是数组或对象
相关文章:
- 在 ng 模型中具有单向绑定的两个输入
- 自定义指令上的AngularJS单向绑定
- 通过单向绑定的过滤功能提高自定义角度下拉菜单中的角度性能
- 角度指令单向绑定控制器中的变化值
- 如何在 vue.js 中为由任何操作(不是由用户做出的)更改的元素进行单向绑定
- 在 Angular 1.5 中使用“单向绑定”(<)有什么意义
- Angular 1.3 单向绑定 IE8 支持
- 强制单向绑定,同时将变量分配给另一个变量
- 当用户在输入文本框中键入内容时,单向绑定丢失
- 函数的单向绑定
- angularjs中支持单向绑定的指令是什么
- Angular JS中ng-if表达式中条件单向绑定的语法
- AngularJS单向绑定无法正常工作
- 在VueJS中将一个输入框单向绑定到另一个
- AngularJS指令:用单向绑定从字符串解析数组
- 如何在Angular 1.5中使用单向绑定?手表的替代品
- 在 AngularJS 指令中使用单向绑定
- 在测试期间更改了单向绑定指令属性,没有更新指令范围
- 如何让这个简单的单向绑定与knockout一起工作
- 如何在emberjs上使用单向绑定