我看到很多這方面的文章和文章。它們中的一些,
Developing Modular Backbonejs Applications
TodoMVC with requireJS
Stack Overflow post with most upvotesRequireJS - 爲什麼我應該像jquery,骨幹等shim libs
所以對我來說,模塊化的jQuery,backbonejs和其他圖書館沒有問題。我的問題是爲什麼我應該這樣做?因爲在每個js文件中我們要使用jquery和backbonejs,並且在每個文件上添加下面的代碼似乎給我帶來額外的負擔。
define([
'jquery',
'underscore',
'backbone',
'myFile1', 'myFile1'
], function ($, _, Backbone, module1, module2) {
爲什麼我在包含requireJS之前不要直接將它們包含到html文件中?
<script src="../lib/client/jquery.js"></script>
<script src="../lib/client/underscore.js"></script>
<script src="../lib/client/backbone.js"></script>
<script data-main="client/main" src="../lib/client/require.js"></script>
在這種情況下,我不需要在每個js文件上定義jquery或backbonejs。我可以單獨模塊化我自己的js文件,如下所示。
define([
'myFile1', 'myFile1'
], function (module1, module2) {
這種方法有什麼缺點?這是正確的方法嗎?我打破了任何requirejs規則嗎?
HTML導入的另一個實際問題是,他們必須爲每個HTML文件重複使用一個JS特性(由一組JS文件實現)。這種重複的擔憂是很難保持的。 –
一件令人高興的事情是,你確認,我沒有違反任何規則。感謝那。但對於我來說,在這種情況下,我看到jquery和骨幹一樣bootstrap。有沒有平均shim bootstrap。我的項目肯定需要jquery,骨幹才能成功運行。 – user10
對我來說,我覺得很難在每個文件上定義jQuery,下劃線,主幹等。當我看着他們的模塊,我覺得,哦,人..我知道你需要jquery,下劃線,骨幹,你還需要什麼? :) – user10