RequireJS和Backbone的整合

2022-09-16 17:42:24 字數 1951 閱讀 4195

這兩個輕量級的庫合起來使用確實能夠方便的構建大型應用程式。requirejs填補了前端模組化開發的空缺,backbone採用mvc的分層結構很好的將程式各個部分解耦。

backbone目前不支援amd(曾經支援過),那麼它只能作為普通的js檔案使用。它全域性的標示符是backbone,它還依賴於underscore,underscore的全域性標示是下劃線(_)。

因此,當我們使用amd方式寫的模組中使用backbone時,得確保underscore和backbone已經載入了。

requirejs 2.0後提供了乙個shim引數很好的解決了該問題。

示例目錄

js目錄中有underscore.js,backbone.js。其中cache.js不依賴於backbone,baserouter.js依賴。

index.html如下?1

2345

6789

1011

1213

1415

1617

1819

2021

2223

<html>

<head>

<title>requirejs和backbone整合

<metacharset="utf-8"/>

<scriptsrc="require.js">

<script>

require.config(

}

});

require(['baserouter'], function(baserouter) );

<body>

注意,require.config配置了shim引數,shim引數這裡有介紹。

baserouter內就可以把backbone當成amd模組來使用了。?1

2345

6define(['backbone','cache'],function(backbone, cache);

})

把目錄rb放到apache或其它web伺服器上,訪問index.html。

相關:rb-2012-6-8.zip

RequireJS和Backbone的整合

這兩個輕量級的庫合起來使用確實能夠方便的構建大型應用程式。requirejs填補了前端模組化開發的空缺,backbone採用mvc的分層結構很好的將程式各個部分解耦。backbone目前不支援amd 曾經支援過 那麼它只能作為普通的js檔案使用。它全域性的標示符是backbone,它還依賴於unde...

Requirejs常用配置和應用

requirejs require方法衝突 如果載入了多個requirejs指令碼,每個requirejs會判斷是否瀏覽器已經實現了require和define方法。如果瀏覽器已經自帶require和define方法,或者之前已經有乙個requirejs指令碼執行,那麼這個requirejs就會立刻...

關於requirejs和grunt壓縮合併是否矛盾

requirejs主要是為了模組化開發,這樣帶來的好處不言而喻。但是分成多個js檔案增加了請求數,那麼就要用到合併壓縮。合併壓縮了原來的許多獨立的js模組,那requirejs又是怎麼衝壓縮的檔案中找到各個獨立的模組進行載入的呢,感覺兩者有點衝突,這個問題想了很久也假想了很多可能。在知乎上找到了乙個...