角双向绑定在哪里有用?

  • 本文关键字:在哪里 绑定 angularjs
  • 更新时间 :
  • 英文 :


双向绑定特性在angular中非常流行,根据angular社区的说法,与单向绑定相比,它是很好的。

有很多简单的例子来解释它是如何工作的。

但我的问题是我们在实际应用中在哪里使用该功能。一个例子是使用输入框,除此之外,它还有什么好的用途吗?

作为默认的双向绑定是不明智的,因为它会产生性能问题(大约有2000个观察者,你的应用可能会很快变坏)。它导致在Angular 1中引入了{{::}}绑定语法(绑定一次语法)。总的来说,我看不出有什么地方我同意任何有经验的Angular开发人员所说的默认双向绑定是一件好事。

我可以告诉你一个事实,在编写了一个同时显示许多不同类型对象的列表的应用程序之后,默认的双向绑定是一个错误。它创造了太多执着的观察者。整个社区似乎都强烈同意这一点。

所以你的建议是正确的;双向绑定有很多用途。但这些需求应该被看作是少之又少。即使这样,你也可以稍微思考一下,就不需要它了。

对我来说,双向绑定主要用于输入字段。但这种机制现在肯定被低估了,应该谨慎使用。

当你用$scope变量绑定标签时,虽然绑定是双向的(根据定义),但它只在JS -> HTML方向上相关。

双向绑定只有在值也可以被用户改变的情况下才会被充分利用,这意味着任何类型的INPUT组件(文本框、下拉框、复选框等)。

一个简单的(虽然是单向的)例子是当您有一个可以用多种语言显示的页面时。您可以在所有地方部署$scope变量,并为它们分配当前语言的字符串。

当用户切换语言时,将新字符串简单地赋值给相应的变量将使屏幕自动更新为新语言。

最新更新