虽然我同意@Claies认为,由于两者之间的主要差异,你无法将其逐步转换为另一个。但是,我认为你可以使用骨干应用程序作为参考来构建一个角度应用程序,并且你可以使用一些代码 - 主要是来自另一个应用程序的业务逻辑。
我过去曾经使用过骨干和棱角分明的角色,但从未尝试过转换,所以请用一大堆盐来思考。
让我们看看角度和主干结构之间的相似之处:
- 视图 - Backbone具有可以使用路由器切换的视图。
Angular具有控制器和模板组合的视图
由路由器控制。
- 组件 - 骨干视图由子视图和它们组成
自己的模型和功能,由视图或更高级别呈现
子视图。 Angular有一个视图可以组成的指令和每个
指令可以包含其他子指令。
- 业务逻辑 - 骨干业务逻辑驻留在
视图/模型/辅助对象。在角度服务负责
业务逻辑。
- 模型和收藏 - Backbone有一个独特的模型和
具有一种绑定和事件功能的集合。角
没有官方模特。模型可以与变量一样小
或像树一样大。角度模型应由a处理
服务。
醇>
所以,在这个基本的评论之后,这就是我要做的事情 - 主要是按照我认为的观点来看:
- 通过从视图中删除所有业务逻辑来重构我的主干应用程序
和模型,并将它们移动到辅助对象中。
- 将助手转变为角度服务。
- 将模型和集合转换为对象和数组。把它们包裹起来
角度服务 - 服务将有方法来获取和
更新模型。如果您需要收听模型,可以使用
$ watch,ng-model& ng-change,或$播放事件时你
更改服务中的模型。
- 将视图转换为角度视图 - 即控制器和控制器的组合
模板。
- 将子视图转换为指令 - 将视图中的数据传递给
指令可以使用属性,服务和事件来完成。
- 模板 - 两者都使用带有绑定的html模板,所以只要
你可以保留模型对象和数组结构
基本上很容易将把手转换成角度。在你之后
查看模型,添加事件处理程序(ng-click和朋友),
和模型绑定(ng-model)。
醇>