- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
EXT JS动态加载机制探究及实现
EXT JS动态加载机制探究及实现 摘要:为了提供给用户良好的页面使用感受,在页面中使用脚本是常见的做法。用Javascript开发的Ext Js框架其丰富的界面功能,能带给用户良好的体验。为了提高页面的执行效率,Ext Js通过一系列方法实现了动态加载机制,具体有参数设置方法、Ext部分导入方法以及微加载等。文章Ext Js的动态加载机制的相关方法进行讨论。经过比较,其中的参数设置方法简单、高效
关键词:Ext JS;动态加载;执行效率;JavaScript;参数设置
中图分类号:TP391.1
文献标志码:A
文章编号:1006-8228(2017)01-41-03
0.引言
随着Web技术的广泛应用和发展,开发者更希望开发出吸引用户同时能满足用户需求的页面。而为了达到良好的效果和简化开发,市场出现了许多以JavaScript为基础的框架,其中Ext Js就是一个比较综合的Js框架。其主要应用是界面式开发,方便用户快捷高效的制作出一个界面统一的应用系统。但是一次性加载完所有的Js文件,对于一个较大型的项目来说,效率就会变得低下。是否可以在需要的时候才进行加载?Ext Js的动态加载机制,就实现了按需加载。该功能是从Ext Js 4.0版本开始新增的特性
1.实现动态加载的具体方法
1.1使用相关加载时的参数配置规则
(1)需要加载的外部js文件需要使用Ext.defme的方法定义一个类
(2)外部js文件和类文件名要一致。比如创建类App.ux.MusicWin对应的文件名是MusicWin.1s
(3)要实现动态加载,必须配置参数
Ext.Loader.setConfig(enabled:true),将其中enabled屙性的值设置为true,该属性的默认值是false
(4)可以通过设置paths,设置1s文件的位置,如缺省,就是当前路径
例如:Ext.Loader.setConfig(paths:App.ux’:”);,到当前路径寻找App.ux的类定义
如果不设置这个参数,就是默认到App这个项目的ux路径下去寻找
使用chrome的Develop工具可以看到,在执行了相关操作(比如点击按钮)后,才会去加载定义的js文件,测试成功。图1和图2展示了测试的结果
此方式已经考虑缓存的状况。一段时间更新的话,不会重复加载同样的js文件
1.2自定义需要的ext-all.is文件,而不是导入整个文件的实现规则
(1)下载Sencha Cmd。Sencha Cmd是一套集打包、部署、压缩等功能的工具。Sencha Cmd支持Sencha Ext Js的4.1.1a及以上版本并支持SenchaTouch的2.1版本及以上。许多新功能需要在框架的支持下工作。Sencha Cmd需要Java的运行环境,需要1.7及以上版本的java环境支持,最低要求是javal.6版本。其下载地址:http:///products/sencha-cmd/download。安装完后,进入命令行(CMD)执行:
sencha-sdk extjs compile exclude-namespace Ext.
chart and concat ext-all-nocharts-debug-w-comments,js
(2)使用sencha cmd可以产生指定模块的js.(不需要的模块就不会包括进来)
(3)sdk后面是extjs的目录,sencha cmd依赖下面的src目录的源代码产生汇总的is
(4)包和第三方包并不是使用Ext.define方式来定义的,使用以下方法导入自己定义的is文件:Ext.Loader.IoadScript(url:scriptpath,scope:this):
需要注意两点:①这种方式是没有缓存机制的,只要执行这个,都会从服务器端重新下载代码;②这种方式是异步的,如果导入两份有前后依赖关系的js,则有可能出问题。可以用祥光方法解决这个问题。定义is的全局变量,或在Ext对象中设置相应的属性。对有依赖关系的文件,可以在第一份加载成功后再加载第二份
Ext.LoadeLIoadScript({url:scriptl path,scope:this.
onLoad:function()
Ext.Loader.10adScript(url:script2path,scope:this):
1.3使用controller方式具体实现规则
(1)获取加载文件的路径:对controHer而言,它的加载路径总是有两个备选路径,一个是Ext框架级别的备选路径,它的默认值是当前目录,另外一
您可能关注的文档
- A Brief Analysis On How To Improve Students’ Participation Enthusiasm In Classroom.doc
- A Comparative Analysis of Foucault’s and Marx’s Theory of Population.doc
- A Sad Love Story带来反思.doc
- A Study of the Affect of Cultural Differences on Sino―US Communication and the Coping Strategy.doc
- ABC分类法在医疗项目成本核算中应用.doc
- ALA―PDT及口服维胺酯胶囊治疗中重度痤疮疗效及安全性比较.doc
- An analysis on the translation of the name of a Missionaries’newspaper.doc
- An Imagery Scene of Autumn in Keats’ Mind.doc
- API连通跨平台协作让营销更透明有效.doc
- Arguments against Sapir―Whorf Hypothesis.doc
最近下载
- 中国移动2018年校园招聘考试笔试题目考试试卷-历年考试真题.doc VIP
- 基础会计洑建红习题答案(新税率).doc VIP
- 蟑螂防治_六_不同场所蟑螂的防治.docx VIP
- 人民大2023商务英语视听说(第1册)(第二版)PPTUnit 8 Work and Life.pptx VIP
- 医美皮肤美容产品芙语诺专业知识课件.pdf VIP
- 跨文化交际:中英文化对比 (14).ppt VIP
- 《乳腺癌术后康复锻炼课件》.ppt VIP
- 科研经费管理规定.docx VIP
- 鲁科版四年级上册劳动项目一 清洁与卫生——班级卫生大扫除(课件).pptx VIP
- 2025年秋学期人教版初中数学八年级上册教学计划教学进度表.docx VIP
文档评论(0)