课程表

Ext.js课程

工具箱
速查手册

Ext.js 架构

当前位置:免费教程 » JS/JS库/框架 » Ext.js

Ext JS遵循MVC / MVVM架构。

MVC - 模型视图控制器体系结构(版本4)

MVVM - 模型视图Viewmodel(版本5)

这种架构不是程序的强制性,但最好的做法是遵循这种结构,使您的代码高度可维护和组织。

项目结构使用Ext JS应用程序

  1. ----------src
  2. ----------resources
  3. -------------------CSS files
  4. -------------------Images
  5. ----------JavaScript
  6. --------------------App Folder
  7. -------------------------------Controller
  8. ------------------------------------Contoller.js
  9. -------------------------------Model
  10. ------------------------------------Model.js
  11. -------------------------------Store
  12. ------------------------------------Store.js
  13. -------------------------------View
  14. ------------------------------------View.js
  15. -------------------------------Utils
  16. ------------------------------------Utils.js
  17. --------------------------------app.js
  18. -----------HTML files

Ext JS应用程序文件夹将驻留在您的项目的JavaScript文件夹中。

应用程序将包含控制器,视图,模型,存储,实用程序文件与app.js.

app.js:程式流程开始的主要档案,应该使用< script> 标签。 应用程序调用应用程序的控制器的其余功能。

Controller.js:它是Ext JS MVC架构的控制器文件。 这包含应用程序的所有控制,事件侦听器的最大功能的代码。 它具有为该应用程序中使用的所有其他文件定义的路径,例如store,view,model,require,mixins。

View.js:它包含应用程序的界面部分,显示给用户。 Ext JS使用各种UI丰富的视图,可以根据需要在这里扩展和自定义。

Store.js:它包含本地缓存的数据,它将在模型对象的帮助下在视图上呈现。 存储使用代理获取数据,代理具有为服务定义的路径以获取后端数据。

Model.js:它包含绑定要查看的商店数据的对象。 它有后端数据对象到视图dataIndex的映射。 在store的帮助下获取数据。

Utils.js:它不包括在MVC架构中,但是最好的做法是使代码清晰,不太复杂,更加可读。 我们可以在这个文件中编写方法,并在控制器或视图渲染器中调用它们。 这对代码可重用性目的也很有帮助。


在MVVM架构中,控制器被ViewModel替代。

ViewModel:它基本上是药物视图和模型之间的变化。 它将数据从模型绑定到视图。 同时它没有与视图的任何直接交互它只有模型的知识。

怎么运行的

例如,如果我们在UI中的两三个地方使用一个模型对象,如果我们在UI的一个地方更改值,我们可以看到,甚至没有保存更改模型更改的值,因此反映在UI中的所有地方 在哪里使用模型。

它使开发人员更加轻松和简单,因为不需要额外的编码绑定数据。

转载本站内容时,请务必注明来自W3xue,违者必究。
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号