javascript
Atitit.js模块化 atiImport 的新特性javascript import
Atitit.js模塊化 atiImport 的新特性javascript import
?
?
1. 常見的js import規范amd ,cmd ,umd1
1.1. Require更多流行3
2. atiImport3
2.1. Base url的設置4
2.2. Atiimport的使用4
2.3. Page load事件的加載要使用window。Load事件4
3. 參考4
?
?
1.?常見的js import規范amd ,cmd ,umd
五、AMD模塊的寫法
require.js加載的模塊,采用AMD規范。也就是說,模塊必須按照AMD的規定來寫。
?
六、加載非規范的模塊
理論上,require.js加載的模塊,必須是按照AMD規范、用define()函數定義的模塊。但是實際上,雖然已經有一部分流行的函數庫(比如jQuery)符合AMD規范,更多的庫并不符合。那么,require.js是否能夠加載非規范的模塊呢?
回答是可以的。
?
作者::??★(attilax)>>>???綽號:老哇的爪子?(?全名::Attilax?Akbar?Al?Rapanui?阿提拉克斯?阿克巴?阿爾?拉帕努伊?)?漢字名:艾龍,??EMAIL:1466519819@qq.com
轉載請注明來源:?http://blog.csdn.net/attilax
?
這樣的模塊在用require()加載之前,要先用require.config()方法,定義它們的一些特征。
舉例來說,underscore和backbone這兩個庫,都沒有采用AMD規范編寫。如果要加載它們的話,必須先定義它們的特征。
require.config({
shim: {
'underscore':{
exports: '_'
},
'backbone': {
deps: ['underscore', 'jquery'],
exports: 'Backbone'
}
}
});
require.config()接受一個配置對象,這個對象除了有前面說過的paths屬性之外,還有一個shim屬性,專門用來配置不兼容的模塊。具體來說,每個模塊要定義(1)exports值(輸出的變量名),表明這個模塊外部調用時的名稱;(2)deps數組,表明該模塊的依賴性。
?
1.1.?Require更多流行
?
?
2.?atiImport
Attilax總結...麻煩的..require加載要改寫原js文件格式,麻煩。
?
還是,使用import 機制容易的...
?
原理如下:::
動態insert script標簽走ok蘭..
?
// JavaScript Document
var ImportMap={};
?
function importx(jsSrc)
{
if(ImportMap[jsSrc])
return;
ImportMap[jsSrc]=1;
?var oHead = document.getElementsByTagName('HEAD').item(0);
?
????var oScript= document.createElement("script");
?
????oScript.type = "text/javascript";
?
????oScript.src=import_base+jsSrc;
?
????oHead.appendChild( oScript);
}
?
?
2.1.?Base url的設置
??<script>
?
var apiurl="/wrmiServlet";
var import_base="../";
$ex_show_err_str=true;
????</script>
?
<script type="text/javascript" src="../com.attilax/core/import.js"></script>
?
2.2.?Atiimport的使用
importx("com.attilax/dataService/dataServiceV2q329.js");
importx("com.attilax/web/req.js");
importx("com.attilax/web/dslUtil.js");
importx("com.attilax/core/jqUtil.js");
importx("com.attilax/core/ex.js");
importx("com.attilax/core/core.js");
importx("com.attilax/text/str.js");
importx("com.attilax/web/urlUtil.js");
importx("com.attilax/ui/Table.js");
?
2.3.?Page load事件的加載要使用window。Load事件
最好不個 defer ??,jq ?load都加上,確保js加載完成
3.?參考
?
Javascript模塊化編程(三):require.js的用法 - 阮一峰的網絡日志.html
動態加載JS腳本的4種方法 - JavaScript - web - ITeye論壇.html
?
轉載于:https://www.cnblogs.com/attilax/p/5963400.html
總結
以上是生活随笔為你收集整理的Atitit.js模块化 atiImport 的新特性javascript import的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C# Java间进行RSA加密解密交互
- 下一篇: 《Algorithm算法》笔记:元素排序