我遇到了一些使用 AngularJS 和 Sencha Touch 的项目(例如 https://github.com/tigbro/sencha-touch-angular-adapter )。两者一起使用有什么好处吗?如果是这样,是为了什么?我的印象是它们都是成熟的框架,你不必混合/匹配。
最佳答案
恕我直言,这不值得麻烦。
实际上,很容易将其他框架/库混入 SenchaTouch/ExtJS,而且(我认为)人们这样做的动机主要是为了获得双向数据绑定(bind)到 ST/Ext 的好处。
事情 将如果你只是触摸表面就可以了。您的 HTML 变得干净且更易于维护,不再“奇怪”<tpl>
标签在你的 JavaScript 代码中 float ,等等。你的项目的 UI 部分变得很漂亮。
而且,您甚至可以通过简单的Ext.data.Model
轻松地进行数据绑定(bind)同步。完美无缺。
但是,如果您使用 ST/Ext 处理与后端的数据通信,则您正在处理 Ext.data.Store
大多数时候。您收集的数据从后端返回到商店,并且您的模型的 hasMany 关联以商店的形式出现,仅举几例。
现在,如何将存储与普通 JavaScript 数组或某种用于双向数据绑定(bind)的可观察数组同步?如果绑定(bind)的数组发生了变化,存储需要做什么?如果存储发生变化,需要对绑定(bind)数组做些什么?添加、删除和插入都是相当简单的操作,那么排序和过滤呢?
因此,如果你有能力放弃Ext.data.Store
, 将 angular 与 ST/Ext 混合是相当容易的任务;否则,就坚持 Sencha 。
关于AngularJS 与 Sencha Touch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15687970/