Ext JS模块化开发
早期基于Ext JS的Web开发方式,是在HTML中引入JS和CSS文件,典型的就是引入 ext-all.js 这样的文件。ext all 包含的内容很多, 有基本的核心组件、扩展组件以及图表等其他组件。如果应用中不需要使用这些包,则导入全部的Ext JS包显然就是浪费了网络资源,同时应用的启动速度也大打折扣。
在Sencha Cmd工具之前,可以使用YUI Compressor编译和压缩指定的组件;在Sencha Cmd出现之后,编译选定包的代码就变得容易了。
Ext JS的发展陆续追谁了最新的前端技术,包括Node.js 和模块化开发等,具体包括:
- 代码结构及开发模块化
- 模块化编译
- 模块化加载,也就是动态加载
拆分模块的应用
在一般的应用中,比如互联网网站或是简单的应用系统,基本上创建一个应用,在该应用目录下开发即可,不需要拆分模块; 但如果是复杂的应用,类似使用Ext JS创建大型的应用系统,比如ERP或是PLM系统, 这些系统包含的模块很多,对于某些角色的用户,可能只会使用到一个或几个模块的功能, 不拆分模块的状况下,编译后的js 文件会达到几兆乃至十几兆,在该状况下,应用的首页的初始化就会很慢,需要一分钟乃至数分钟才能显示。这个时候,就需要引入模块的动态加载功能。
此外, 在应用较大时,拆分模块进行开发对于代码的分发和管理也是有很多好处的。
根据是否拆分和共享核心模块, 模块的结构分为两种:
- 在应用下创建核心模