requirejs(shim)处理加载非AMD规范的js库
生活随笔
收集整理的這篇文章主要介紹了
requirejs(shim)处理加载非AMD规范的js库
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
使用requirejs加載模塊,模塊的定義得遵守AMD規(guī)范,也即定義模塊的時(shí)候使用如下函數(shù)定義模塊:
1 define(function(){ 2 var private = function(){ 3 console.log('私有方法...'); 4 }; 5 return { 6 public:function(){private();} 7 }; 8 });即使用define包括模塊代碼,如果想在requirejs中嵌入自己以前的某些代碼,但是這些代碼沒(méi)有遵守AMD規(guī)范,該怎么辦呢?騷年不用擔(dān)心,require的config中的shim能幫你解決痛苦!例如本人的文件目錄結(jié)構(gòu)如下:
我想要在quikTip.js文件中使用framewokr.js提供的對(duì)象,但是framework.js是不遵守AMD規(guī)范的,在quikTip.js文件中require ?framework模塊之前必須先處理下framework.js使其符合AMD規(guī)范,代碼如下:
1 require.config({ 2 baseUrl:'js/utily',//指定js文件的基路徑 3 shim:{ 4 'framework':{//這個(gè)鍵名為要載入的目標(biāo)文件的文件名,不能隨便命名否則加載framework.js文件后是拿不到改文件對(duì)外提供的接口的。因?yàn)檫@個(gè)坑了哥一下午!!! 5 exports:'PXJSFrame'//exports的值為framework.js提供的 對(duì)外接口的名稱(chēng) 6 } 7 } 8 }); 9 require(['framework'],function(frame){ 10 var PXJSFrame = frame; 11 console.log(frame);//此處就會(huì)打印framework.js中對(duì)外提供的接口對(duì)象啦哈啊哈 12 }?
轉(zhuǎn)載于:https://www.cnblogs.com/QingChengFE/p/4512508.html
總結(jié)
以上是生活随笔為你收集整理的requirejs(shim)处理加载非AMD规范的js库的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 交通银行商户分期怎么申请?申请要满足这些
- 下一篇: 在oracle中使用Trigger