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 日期计算算法
Sep 11 Javascript
JS定义回车事件(实现代码)
Jul 08 Javascript
jquery checkbox 勾选的bug问题解决方案与分析
Nov 13 Javascript
javascript简单实现图片预加载
Dec 03 Javascript
jQuery实现tab标签自动切换的方法
Feb 28 Javascript
jQuery移动页面开发中的触摸事件与虚拟鼠标事件简介
Dec 03 Javascript
BootStrap 动态添加验证项和取消验证项的实现方法
Sep 28 Javascript
Vue.js开发环境搭建
Nov 10 Javascript
微信小程序搭建(mpvue+mpvue-weui+fly.js)的详细步骤
Sep 18 Javascript
解决vue项目中页面调用数据 在数据加载完毕之前出现undefined问题
Nov 14 Javascript
在 Vue 中编写 SVG 图标组件的方法
Feb 24 Javascript
Jquery Fade用法详解
Nov 06 jQuery
利用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
屏蔽浏览器缓存另类方法
2006/10/09 PHP
PHP多个文件上传到服务器实例
2014/10/29 PHP
php中array_slice和array_splice函数解析
2016/10/18 PHP
详解PHP使用日期时间处理器Carbon人性化显示时间
2017/08/10 PHP
PHP实现的猴王算法(猴子选大王)示例
2018/04/30 PHP
javascript sudoku 数独智力游戏生成代码
2010/03/27 Javascript
JQuery验证工具类搜集整理
2013/01/16 Javascript
js数组Array sort方法使用深入分析
2013/02/21 Javascript
js判断选择时间不能小于当前时间的示例代码
2013/09/24 Javascript
JavaScript代码轻松实现网页内容禁止复制(代码简单)
2015/10/23 Javascript
JavaScript数组的一些奇葩行为
2016/01/25 Javascript
浅谈JS中逗号运算符的用法
2016/06/12 Javascript
AngularJS 路由详解和简单实例
2016/07/28 Javascript
快速入门Vue
2016/12/19 Javascript
浅谈jQuery的bind和unbind事件(绑定和解绑事件)
2017/03/02 Javascript
Vue异步加载about组件
2017/10/31 Javascript
vue+vue-validator 表单验证功能的实现代码
2017/11/13 Javascript
jquery应用实例分享_实现手风琴特效
2018/02/01 jQuery
vue 监听键盘回车事件详解 @keyup.enter || @keyup.enter.native
2018/08/25 Javascript
vue 使用html2canvas将DOM转化为图片的方法
2018/09/11 Javascript
Vue配置marked链接添加target=&quot;_blank&quot;的方法
2019/07/19 Javascript
详解从vue-loader源码分析CSS Scoped的实现
2019/09/23 Javascript
echarts 使用formatter 修改鼠标悬浮事件信息操作
2020/07/20 Javascript
解决vue项目axios每次请求session不一致的问题
2020/10/24 Javascript
[52:31]VP vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
给Python初学者的一些编程技巧
2015/04/03 Python
使用Python实现跳帧截取视频帧
2019/05/31 Python
Python3 A*寻路算法实现方式
2019/12/24 Python
Python Des加密解密如何实现软件注册码机器码
2020/01/08 Python
浅析python实现动态规划背包问题
2020/12/31 Python
Python实现石头剪刀布游戏
2021/01/20 Python
英国蜡烛、蜡烛配件和家居香氛购买网站:Yankee Candle
2018/12/12 全球购物
感恩老师的演讲稿
2014/05/06 职场文书
安全施工责任书
2014/08/25 职场文书
六年级作文之预言作文
2019/10/25 职场文书
Zabbix对Kafka topic积压数据监控的问题(bug优化)
2022/07/07 Servers