可以合理地使用PubSub来模仿双向绑定吗?

时间:2018-10-23 18:50:33

标签: angularjs publish-subscribe fault-tolerance two-way-binding

关于AngularJS的最方便的事情之一是双向绑定。建议使用较小的库(如PubSubJS)来复制它,而不使用AngularJS吗?或者,这是否会创建PubSubJS打算处理的更多事件?

例如,假设有一个表单应用程序,在其中您在输入中键入名字并发布firstName事件。名称的订户将其添加到页面标题中,并在页面顶部添加<h2/>。然后,在“教育水平”选择中选择一个选项,并发布“硕士学位”。然后,订户根据该值显示其他输入。

因此,这当然是一个相当简单的示例,但是可以像这样使用PubSubJS来构建更复杂的单页应用程序,而在AngularJS中,$scope.firstName可能只是firstName事件,作为参数的价值?好处是,它是一个很小的库,并且您可以对代码进行更多的容错解耦,但这也意味着将触发许多事件。这样做的另一个好处是,您可以返回并稍后编写类似于页面交互分析模块的内容,该模块无需跟踪原始代码即可跟踪事件。

1 个答案:

答案 0 :(得分:0)

我不了解PubSub(我不熟悉),但是angularjs所使用的模式与MVVM(模型-视图-视图-模型)或任何其他双向绑定机制基本相同。所以我认为可以重复。

编辑:对不起,您问是否可取。我会说不,其他新兴的功能性方法更适合。