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 相关文章推荐
几款极品的javascript压缩混淆工具
May 16 Javascript
js tab 选项卡
Apr 26 Javascript
JS+CSS制作DIV层可(最小化/拖拽/排序)功能实现代码
Feb 25 Javascript
js unicode 编码解析关于数据转换为中文的两种方法
Apr 21 Javascript
jquery.gridrotator实现响应式图片展示画廊效果
Jun 23 Javascript
jquery实现数字输入框
Feb 22 Javascript
vue自定义指令的创建和使用方法实例分析
Dec 04 Javascript
JS实现二维数组元素的排列组合运算简单示例
Jan 28 Javascript
JS使用iView的Dropdown实现一个右键菜单
May 06 Javascript
react+redux仿微信聊天界面
Jun 21 Javascript
手写Vue弹窗Modal的实现代码
Sep 11 Javascript
Vue+element+cookie记住密码功能的简单实现方法
Sep 20 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
php strstr查找字符串中是否包含某些字符的查找函数
2010/06/03 PHP
解析php 版获取重定向后的地址(代码)
2013/06/26 PHP
PHP中file_exists()判断中文文件名无效的解决方法
2014/11/12 PHP
php+html5使用FormData对象提交表单及上传图片的方法
2015/02/11 PHP
Centos7安装swoole扩展操作示例
2020/03/26 PHP
在IE模态窗口中自由查看HTML源码的方法
2007/03/08 Javascript
js程序中美元符号$是什么
2008/06/05 Javascript
学习从实践开始之jQuery插件开发 菜单插件开发
2012/05/03 Javascript
jquery如何通过name名称获取当前name的value值
2013/12/20 Javascript
jQuery中ajax错误调试分析
2016/12/01 Javascript
jQuery拖拽通过八个点改变div大小
2020/11/29 Javascript
微信小程序组件 contact-button(客服会话按钮)详解及实例代码
2017/01/10 Javascript
小发现之浅谈location.search与location.hash的问题
2017/06/23 Javascript
微信小程序 转发功能的实现
2017/08/04 Javascript
jQuery实现可兼容IE6的遮罩功能详解
2017/09/19 jQuery
js 显示日期时间的实例(时间过一秒加1)
2017/10/25 Javascript
解决vue单页路由跳转后scrollTop的问题
2018/09/03 Javascript
JS解惑之Object中的key是有序的么
2019/05/06 Javascript
[01:03:13]VG vs Pain 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python实现测试磁盘性能的方法
2015/03/12 Python
Python使用中文正则表达式匹配指定中文字符串的方法示例
2017/01/20 Python
python使用arcpy.mapping模块批量出图
2017/03/06 Python
解读python logging模块的使用方法
2018/04/17 Python
python在文本开头插入一行的实例
2018/05/02 Python
python 保存float类型的小数的位数方法
2018/10/17 Python
python随机生成库faker库api实例详解
2019/11/28 Python
Python urlopen()和urlretrieve()用法解析
2020/01/07 Python
python通过对字典的排序,对json字段进行排序的实例
2020/02/27 Python
什么是Python中的顺序表
2020/06/02 Python
PyInstaller运行原理及常用操作详解
2020/06/13 Python
海外淘书首选:AbeBooks
2017/07/31 全球购物
澳大利亚优质葡萄酒专家:Vintage Cellars
2019/01/08 全球购物
eBay爱尔兰站:eBay.ie
2019/08/09 全球购物
python文件目录操作之os模块
2021/05/08 Python
如何正确理解python装饰器
2021/06/15 Python
详解Python函数print用法
2021/06/18 Python