ExtJS4中的requires使用方法示例介绍


Posted in Javascript onDecember 03, 2013

ExtJS4的requires是新增的机制,主要是实现异步加载机制。这样在不点击对应的按钮或者选项的时候就不会加载对应的js文件,提高了加载速度和用户等待时间。

requires机制的实现通过一个Ext.Loader.setConfig函数来设置文件寻找的映射目录,然后在需要用到对应js文件的时候使用Ext.require进行加载。

文件的存储结构如下所示:
ExtJS4中的requires使用方法示例介绍 
ux文件夹和lesson2.htm和lesson22.js在相同的目录下,而使用到的MyWin.js存放在ux的文件夹中。

在lesson2.html中的代码如下所示:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=GBK"> 
<title>extjs4 desktop</title> 
<!-- css --> 
<link rel="stylesheet" type="text/css" href="../../extjs4/resources/css/ext-all.css" /> <script type="text/javascript" src="../../extjs4/bootstrap.js"></script> 
<script type="text/javascript" src="lesson22.js"></script> 
</head> 
<body> 
<button id="myButton" align="center">show</button> 
</body> 
</html>

在该代码片中,并未加载ux目录下的MyWin.js文件,那么在加载该页面的时候,并不会把MyWin.js文件同时加载进来,只是在需要的时候再加载。这里的需要是通过点击button来实现的。

lesson22.js文件内容如下所示:

(function(){ 
Ext.Loader.setConfig({ 
enabled:true, //开启异步加载模式 
paths:{ 
myApp:'lesson2/ux' //声明文件的位置 
} 
}); Ext.onReady(function(){ 
Ext.require('ux.MyWin',function(){ 
var mw = Ext.create('ux.MyWin',{ 
title:'my Test' 
}); 
Ext.get('myButton').on('click',function(){ 
mw.show(); 
}); 
}); 
}); 
})();

ux目录下的MyWin.js文件内容如下所示:
Ext.define('ux.MyWin',{ 
extend:'Ext.window.Window', 
title:'sign up', 
width:400, 
height:300 
});

注意:这里的文件名称MyWin和函数名称必须一样,我试验了一下,如果不一样也会造成无法显示。

刚开始我使用的方法是uspcat上的ExtJS4教学视频第二讲的写法进行书写,但是始终无法出现我想要的结果,可能是版本问题,也可能是自己的问题,通过这样修改,能够使用requires方法了。特此为记,供有相同困惑的人使用。

Javascript 相关文章推荐
拖动一个HTML元素
Dec 22 Javascript
jQuery实现获取绑定自定义事件元素的方法
Dec 02 Javascript
jQuery的选择器中的通配符[id^='code']或[name^='code']及jquery选择器总结
Dec 24 Javascript
jQuery根据表单name获取值的方法
May 24 Javascript
字太多用...代替的方法(两种)
Mar 15 Javascript
JavaScript实现的原生态兼容IE6可调可控滚动文字功能详解
Sep 19 Javascript
Vue + Vue-router 同名路由切换数据不更新的方法
Nov 20 Javascript
vue.js多页面开发环境搭建过程
Apr 24 Javascript
vue实现的上拉加载更多数据/分页功能示例
May 25 Javascript
在Vue项目中使用Typescript的实现
Dec 19 Javascript
VSCode写vue项目一键生成.vue模版,修改定义其他模板的方法
Apr 17 Javascript
vue+Element-ui实现分页效果
Nov 15 Javascript
利用JS进行图片的切换即特效展示图片
Dec 03 #Javascript
JavaScript伸缩的菜单简单示例
Dec 03 #Javascript
JS window对象的top、parent、opener含义介绍
Dec 03 #Javascript
javascript实现信息的显示和隐藏如注册页面
Dec 03 #Javascript
一个js控制的导航菜单实例代码
Dec 03 #Javascript
JS与C#编码解码
Dec 03 #Javascript
探讨jQuery的ajax使用场景(c#)
Dec 03 #Javascript
You might like
《超神学院》霸气归来, 天使彦上演维多利亚的秘密
2020/03/02 国漫
在PWS上安装PHP4.0正式版
2006/10/09 PHP
PHP数组去重比较快的实现方式
2016/01/19 PHP
从父页面读取和操作iframe中内容方法
2009/07/25 Javascript
JS 时间显示效果代码
2009/08/23 Javascript
javascript天然的迭代器
2010/10/29 Javascript
jQuery中on()方法用法实例
2015/01/19 Javascript
javascript bom是什么及bom和dom的区别
2015/11/26 Javascript
浅谈JS原型对象和原型链
2016/03/02 Javascript
Bootstrap表格使用方法详解
2017/02/17 Javascript
Bootstrap的Carousel配合dropload.js实现移动端滑动切换图片
2017/03/10 Javascript
微信小程序wx.getImageInfo()如何获取图片信息
2018/01/26 Javascript
详解基于iview-ui的导航栏路径(面包屑)配置
2019/02/22 Javascript
利用Promise自定义一个GET请求的函数示例代码
2019/03/20 Javascript
微信小程序实现类似微信点击语音播放效果
2020/03/30 Javascript
javascript设计模式 ? 模板方法模式原理与用法实例分析
2020/04/23 Javascript
[54:54]Newbee vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
[01:31:02]TNC vs VG 2019国际邀请赛淘汰赛 胜者组赛BO3 第一场
2019/08/22 DOTA
python获取文件版本信息、公司名和产品名的方法
2014/10/05 Python
为Python程序添加图形化界面的教程
2015/04/29 Python
使用Python读写及压缩和解压缩文件的示例
2016/07/08 Python
python爬虫神器Pyppeteer入门及使用
2019/07/13 Python
在django中自定义字段Field详解
2019/12/03 Python
Python递归求出列表(包括列表中的子列表)的最大值实例
2020/02/27 Python
谈谈Python:为什么类中的私有属性可以在外部赋值并访问
2020/03/05 Python
Python爬虫爬取新闻资讯案例详解
2020/07/14 Python
详解Python中import机制
2020/09/11 Python
Dockers鞋官网:Dockers Shoes
2018/11/13 全球购物
Monica Vinader官网:英国轻奢珠宝品牌
2020/02/05 全球购物
客服部班长工作责任制
2014/02/25 职场文书
员工离职证明范本
2015/06/12 职场文书
工程主管竞聘书
2015/09/15 职场文书
《雪地里的小画家》教学反思
2016/02/16 职场文书
python四个坐标点对图片区域最小外接矩形进行裁剪
2021/06/04 Python
Python可视化学习之matplotlib内置单颜色
2022/02/24 Python
mysql性能优化以及配置连接参数设置
2022/05/06 MySQL