ExtJS4中的requires使用方法示例介紹
更新時間:2013年12月03日 17:29:28 作者:
ExtJS4的requires是新增的機制,主要是實現(xiàn)異步加載機制,在下面的文章總將為大家介紹下ExtJS4中的requires使用方法,需要的朋友不要錯過
ExtJS4的requires是新增的機制,主要是實現(xiàn)異步加載機制。這樣在不點擊對應的按鈕或者選項的時候就不會加載對應的js文件,提高了加載速度和用戶等待時間。
requires機制的實現(xiàn)通過一個Ext.Loader.setConfig函數(shù)來設置文件尋找的映射目錄,然后在需要用到對應js文件的時候使用Ext.require進行加載。
文件的存儲結構如下所示:
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來實現(xiàn)的。
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和函數(shù)名稱必須一樣,我試驗了一下,如果不一樣也會造成無法顯示。
剛開始我使用的方法是uspcat上的ExtJS4教學視頻第二講的寫法進行書寫,但是始終無法出現(xiàn)我想要的結果,可能是版本問題,也可能是自己的問題,通過這樣修改,能夠使用requires方法了。特此為記,供有相同困惑的人使用。
requires機制的實現(xiàn)通過一個Ext.Loader.setConfig函數(shù)來設置文件尋找的映射目錄,然后在需要用到對應js文件的時候使用Ext.require進行加載。
文件的存儲結構如下所示:
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來實現(xiàn)的。
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和函數(shù)名稱必須一樣,我試驗了一下,如果不一樣也會造成無法顯示。
剛開始我使用的方法是uspcat上的ExtJS4教學視頻第二講的寫法進行書寫,但是始終無法出現(xiàn)我想要的結果,可能是版本問題,也可能是自己的問題,通過這樣修改,能夠使用requires方法了。特此為記,供有相同困惑的人使用。
您可能感興趣的文章:
- Extjs grid添加一個圖片狀態(tài)或者按鈕的方法
- ExtJS[Desktop]實現(xiàn)圖標換行示例代碼
- 解決Extjs上傳圖片無法預覽的解決方法
- ExtJs之帶圖片的下拉列表框插件
- ExtJS 4.2 Grid組件單元格合并的方法
- ExtJS4的文本框(textField)使用正則表達式進行驗證(Regex)的方法
- ExtJS4給Combobox設置列表中的默認值示例
- ExtJS4如何自動生成控制grid的列顯示、隱藏的checkbox
- ExtJS4 表格的嵌套 rowExpander應用
- extJS中常用的4種Ajax異步提交方式
- extjs4 treepanel動態(tài)改變行高度示例
- extjs4圖表繪制之折線圖實現(xiàn)方法分析
相關文章
ExtJS 2.0實用簡明教程 之Border區(qū)域布局
Border布局由類Ext.layout.BorderLayout定義,布局名稱為border。2009-04-04
Extjs中ComboBox加載并賦初值的實現(xiàn)方法
當需要為ComboBox加載數(shù)據(jù)后進行賦初始選中項的話,如果是寫在store.load()之后2012-03-03
extjs grid取到數(shù)據(jù)而不顯示的解決
在使用extjs gridpanel時,當將數(shù)據(jù)載入時,grid中的數(shù)據(jù)并沒有顯示出來。2008-12-12
常用Extjs工具:Extjs.util.Format使用方法
常用Extjs工具:Extjs.util.Format使用方法,需要的朋友可以參考下2012-03-03

