从Backbone迁移到AngularJS - 它有多难?

时间:2013-04-16 14:39:13

标签: javascript backbone.js angularjs refactoring

我正在Backbone中开发一个大项目(大约8000行javascript,不包括外部库),我正在考虑迁移到AngularJS。

目前我有很多代码可以处理DOM更改,绑定和解除绑定事件。我正在使用Mustache进行模板渲染。大多数数据都加载了AJAX,并存储在Backbone模型中,其中一些模型使用BackboneRelational。我正在使用大约10个小jQuery插件来做奇特的UI。

我决心做这次迁移,但是我担心我的最后期限。所以问题是:

  1. 使用AngularJS重写它需要多长时间?也许有人可以分享他的经历。
  2. 现在是否可以开始使用Angular,并使用它实现新的功能,当我们需要与Backbone部分进行交互时不会引起麻烦?
  3. 如果我决定在截止日期之后进行重构,您会建议采用哪些做法让代码更容易迁移?

1 个答案:

答案 0 :(得分:12)

我将大量的5k + BB代码移植到Angular。当我第一次开始使用Angular的时候,我做了这个端口,如果我没记错的话,我会在一个周末然后做3天。所以它在5天左右完成。你必须注意我写了整个BB应用程序(所有5k行也是如此......)所以我更容易移植。

你最初可能会混合使用BB和Angular(在Angular中开发新的部件,然后慢慢地将BB部分移动到......)但是我建议如果可以,那么首先移植完整的应用程序。

作为一般规则,您的所有Backbone模型和集合都应该进入服务(也许是同名的服务?)。移植html和Mustache模板应该是小菜一碟。有点棘手的部分是你的jquery插件。但如果它们很简单,那么你就可以使用angular-ui jquery passthrough(http://angular-ui.github.io/)。