亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

RequireJS多頁面應用實例分析

2019-11-20 09:35:03
字體:
來源:轉載
供稿:網友

本文是requireJS的一些知識點的總結,配上多頁面應用中的實例分析。

本案例的目錄結構如下:

requireJS API的三個主要函數:define(創建模塊),require(加載模塊),config(配置)

1、 HTML文件中加載JS文件

page1.html內容如下:

<!DOCTYPE html><html><head><title>Page 1</title><script data-main="scripts/page1" src="scripts/lib/require.js"></script></head><body><a href="page2.html">Go to Page 2</a></body></html>

page2.html內容如下:

<!DOCTYPE html><html><head><title>Page 2</title><script data-main="scripts/page2" src="scripts/lib/require.js"></script></head><body><a href="page1.html">Go to Page 1</a></body></html>

知識擴展:

data-main屬性指定網頁程序的主模塊,這個文件被requireJS首先加載。由于requireJS默認的文件后綴名是js,所以可以把page1.js簡寫成page1

加載腳本文件的根路徑優先規則

用require()加載模塊時,省略.js后綴,會從baseUrl下查找;如果帶有.js后綴、或以”/"開始、或包含URL協議(http/https)則將根

據你的具體路徑設置去查找

config > data-main > 默認baseUrl

不對data-main和config進行設置,則默認baseUrl為引用require.js的那個HTML頁面所在目錄

設置data-main,則baseUrl為主模塊所在目錄(如第一段HTML中的主模塊為page1.js,因此以其所在目錄/scripts為根目錄)

配置config,顯式設置baseUrl,也可為每一個模塊單獨設置路徑

2、對模塊的路徑等進行配置

  使用require.config()方法,可以對模塊的加載行為進行自定義。在多頁面應用中,可以將配置寫在共用的文件中,如本例中的common.js文件,然后各個頁面加載當前配置后,在回調函數中再加載各自需要的模塊。

common.js代碼如下:

require.config({baseUrl: 'scripts/app',paths: {jquery: ['http://lib.sinaapp.com/js/jquery/1.9.1/jquery-1.9.1.min','../lib/jquery']}});

知識擴展:

支持的配置項:

baseUrl :

  所有模塊的查找根路徑。注意:當加載的js文件(以.js結尾、以”/”開頭、含有協議),不會使用baseUrl;

paths :

  path映射那些不直接放置于baseUrl下的模塊名。設置path時起始位置是相對于baseUrl的,除非該path設置以"/"開頭或含有URL協議;

  注意:在paths中定義的路徑不能含有.js后綴,因為路徑解析機制會自動添加上.js后綴;而且加載路徑可以設置多個,如從CDN加載失敗,則加載本地js文件;

shim:

  為那些沒有使用define()來聲明依賴關系的模塊進行配置;

  其中需要注意兩個參數:

   ?。?)exports值(輸出的變量名),暴露方法接口

    (2)deps數組,表明該模塊的依賴性

  如:

require.config({baseUrl: '/scripts/lib',shim:{zepto: {exports: '$'},backbone: {deps: ['underscore', 'zepto'],exports: 'Backbone'},'zepto.animate': ['zepto']}});

3、模塊的加載

page1.js代碼如下:

require(['./common'], function (common) {require(['sayPage1'], function (sayPage1) {sayPage1.hello();});});

page2.js代碼如下:

require(['./common'], function (common) {require(['sayPage2'], function (sayPage2) {sayPage2.hello();});});

知識拓展: 

 require()函數接受兩個參數。第一個參數是一個數組,表示所依賴的模塊;第二個參數是一個回調函數,當前面指定的模塊都加載成功后,它才會被調用。加載的模塊可以作為回調函數的參數進行調用。

  這里為了保證配置完成后才加載需要的模塊,主要是為了路徑的正確解析,在回調函數中再進行require。

4、模塊的定義

sayPage1.js中的代碼:

define(['jquery'], function($) {function sayHi(){$('body').append('<h1>Hello page1!</h1>');}return {hello: sayHi}});

知識擴展:

  define函數也接受兩個參數。第一個參數為所依賴模塊組成的數組,第二個參數是一個回調函數。

  當然最后上線的時候還要進行JS文件的合并與壓縮,可以利用r.js,方便快捷~

以上所述是小編給大家介紹的RequireJS多頁面應用實例分析,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
最近2019中文字幕mv免费看| 久久久免费精品视频| 欧美整片在线观看| 日韩精品在线观看一区二区| 久久综合伊人77777尤物| 成人免费视频97| 免费不卡欧美自拍视频| 日韩亚洲精品视频| 国产精品电影在线观看| 日本午夜精品理论片a级appf发布| 日韩中文字幕网站| 日本午夜精品理论片a级appf发布| 亚洲天堂一区二区三区| 日韩欧美高清在线视频| 国产精品com| 国产精品久久久久久中文字| 久久久久久久久久久久久久久久久久av| 亚洲人成77777在线观看网| 成人精品一区二区三区电影黑人| 麻豆一区二区在线观看| 久久伊人精品天天| 中文字幕日韩有码| 狠狠色狠狠色综合日日小说| 色琪琪综合男人的天堂aⅴ视频| 一区二区三区国产在线观看| 青青草国产精品一区二区| 亚洲欧美日韩视频一区| 日产日韩在线亚洲欧美| 日韩精品在线免费| 91av在线免费观看| 国产亚洲精品久久久优势| 欧美精品videosex性欧美| 社区色欧美激情 | 国外日韩电影在线观看| 亚洲男人第一av网站| 亚洲欧美一区二区三区四区| 欧美日韩亚洲一区二区| 国内精品400部情侣激情| 国产精品99免视看9| 日韩欧美在线免费观看| 欧美日韩亚洲系列| 亚洲成人激情在线观看| 在线色欧美三级视频| 成人性生交大片免费看视频直播| 成人黄色生活片| 成人日韩av在线| 亚洲区一区二区| 欧美人与性动交a欧美精品| 亚洲激情视频网站| 日韩中文在线视频| 色偷偷噜噜噜亚洲男人| 欧美成人在线影院| 久久深夜福利免费观看| 国产精品入口福利| 亚洲欧美999| 国产精品永久免费视频| 国产香蕉97碰碰久久人人| 九九热最新视频//这里只有精品| 国产成人亚洲综合| 日韩在线观看免费网站| 日韩精品极品在线观看播放免费视频| 97在线免费观看| 欧美性猛交xxxx乱大交极品| 国产一区二区三区精品久久久| 欧美激情视频一区| 狠狠做深爱婷婷久久综合一区| 亚洲午夜久久久久久久| 青青久久av北条麻妃黑人| 色综合伊人色综合网站| 久久久爽爽爽美女图片| 亚洲mm色国产网站| 日韩在线高清视频| 国产一区二区三区在线观看网站| 国产精品欧美一区二区| 亚洲free嫩bbb| 日韩精品中文字幕在线播放| 欧美国产日韩精品| 亚洲黄页网在线观看| 久久久亚洲影院你懂的| 97精品欧美一区二区三区| 亚洲美女av在线| 中文欧美日本在线资源| yw.139尤物在线精品视频| 欧美大码xxxx| 色婷婷综合久久久久| 日韩一二三在线视频播| 色偷偷亚洲男人天堂| 欧美午夜电影在线| 麻豆国产va免费精品高清在线| 欧美精品免费在线观看| 亚洲男人天堂2024| 国产精品入口福利| 国产一区二区日韩| 亚洲成av人片在线观看香蕉| 久久99国产精品久久久久久久久| 国产精品一二三在线| 日本久久久久亚洲中字幕| 日本欧美中文字幕| 精品久久久久久久大神国产| 国产精品无码专区在线观看| 久久精品国产亚洲一区二区| 亚洲国产精品成人一区二区| 中文日韩电影网站| 国产一区二区三区日韩欧美| 欧美日韩免费观看中文| 日韩欧美在线国产| 日韩欧美成人免费视频| 欧美xxxx14xxxxx性爽| 国产精品丝袜久久久久久不卡| 97视频国产在线| 国产精品视频精品| 92看片淫黄大片看国产片| 美日韩精品视频免费看| 俺去了亚洲欧美日韩| 亚洲欧洲视频在线| 亚洲国产一区二区三区在线观看| 国产美女久久久| 亚洲最大成人免费视频| 91av在线免费观看视频| 欧美大奶子在线| 久久久国产精彩视频美女艺术照福利| 日韩欧美大尺度| 亚洲xxxx18| 久久精品久久久久久国产 免费| 成人性生交大片免费看视频直播| 久久久久亚洲精品| 77777亚洲午夜久久多人| 国产成人一区二区三区| 亚洲精品wwww| 国产精品成人免费视频| 国产精品日韩一区| 亚洲第一av在线| 精品国产欧美一区二区五十路| 午夜精品美女自拍福到在线| 亚洲欧美国产一本综合首页| 国模叶桐国产精品一区| 成人福利视频在线观看| 日韩免费观看视频| 久久精品中文字幕| 久久亚洲成人精品| 亚洲网站在线看| 97视频在线观看视频免费视频| 国内精品久久久久久影视8| 亚洲精品理论电影| 最新国产成人av网站网址麻豆| 国产精品99免视看9| 日韩在线观看免费高清| 美女视频久久黄| 欧美在线性视频| 国产欧美亚洲视频| 懂色av中文一区二区三区天美| 国产精品极品在线| 日韩国产一区三区| 亚洲国语精品自产拍在线观看| 亚洲精品按摩视频| 亚洲男人的天堂在线播放| 91在线观看免费高清| 日韩中文字幕网址| 97国产精品免费视频| 国产成人福利视频| 日韩欧美精品在线观看| 国产精品白嫩初高中害羞小美女| 国产精品三级久久久久久电影| 日韩小视频在线|