首頁  >  文章  >  web前端  >  在Html中使用Requirejs進行模組化開發實例詳解_javascript技巧

在Html中使用Requirejs進行模組化開發實例詳解_javascript技巧

WBOY
WBOY原創
2016-05-16 15:05:161435瀏覽

在前端模組化的時候,不只是js需要進行模組化管理,html有時候也需要模組化管理。這裡就介紹下如何透過requirejs,實作html程式碼的模組化開發。

如何使用requirejs載入html

Reuqirejs有一個text的插件,它可以讀取指定檔案的內容,讀取到的內容就是文字。

如何下載text外掛程式

第一種方法,可以透過npm下載:

npm install requirejs/text

第二種方法,也可以直接去官方github上面直接下載。

直接拷貝內容到text.js即可。

如何安裝text外掛程式

在requirejs的main.js中配置text插件的依賴即可,跟jquery差不多,只要保證能透過正常的載入方式載入到它就行。

requirejs.config({
baseUrl: './',
paths: {
'text':path+'/require/text',
...
},
shim: {
...
}
}); 

也可以直接放在baseUrl裡面。

如何使用text

在目標模組中,依照下面的語法即可:

define(function(require){
var html = require("text!html/test.html");
console.log(html);
}); 

define(["text!html/test.html"],function(html){
console.log(html);
}); 

如何進行html的模組化開發?

看過上面你已經會使用text了,但還是不知道怎麼組織前端程式碼。

舉個栗子:

部落格花園的網站頁面會根據上方的導覽跳到不同的頁面。如果是在單一頁面中,很容易想到原始的做法是,導航的按鈕對應不同的div,點擊那個按鈕,就顯示與之對應的div;其他的div則隱藏掉。

那麼,前端的程式碼可能會這樣:

<html>
<body>
<nav>
导航按钮1、导航按钮2、导航按钮3
</nav>
<div style="display:block">按钮1对应的页面</div>
<div style="display:none">按钮2对应的页面</div>
<div style="display:none">按钮3对应的页面</div>
</body>
</html> 

這樣的程式碼會很雜物...而且前端Html會很長...不利於維護。

那麼有了reuqirejs的text插件以後,就可以這樣了:

<html>
<body>
<nav>
导航按钮1、导航按钮2、导航按钮3
</nav>
<div id="target"></div>
</body>
</html> 

然後在對應的模組中:

$('#target').html(require("text!目标按钮对应的页面.html")); 

這樣就隨性多了吧!前端程式碼也可以跟著模組一起有效的管理了!

不過要注意的是:這種方式會導致Jquery綁定的事件失效-所以一定要在html()方法後面,重新綁定下事件。

關於在Html中使用Requirejs進行模組化開發的相關知識就給大家介紹這麼多,希望對大家有幫助!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn