在幾乎所有的骨幹/ Require.js項目,你會看到模型和視圖,類似於此:爲什麼包括jQuery和在每個骨幹JS文件強調/ Require.js項目
define([
'jquery',
'underscore',
'backbone'
], function ($, _, Backbone) {
//Some code goes here, perhaps a Backbone model or view
});
但是,假設您需要正確設置您的Require.js墊片(使用主幹墊片包括deps: ["underscore", "jquery"]
),您只需要定義Backbone - 定義Backbone作爲依賴關係,隱式地將jQuery和Underscore定義爲依賴關係!因此,這也將是正確的:
define([
'backbone'
], function (Backbone) {
//Some code goes here, perhaps a Backbone model or view
});
就個人而言,我會明確地使用其功能的文件中定義的jQuery或下劃線 - 但在像一個簡單的無裝飾的骨幹模型文件,他們似乎是多餘的內容。
爲什麼我經常看到多餘的jQuery和Underscore定義的模式?爲什麼這會成爲一個毫無疑問的最佳實踐?
如果你想使用你在另一個項目中定義的模塊,該怎麼辦? – kinakuta
你回答了你的問題:*就我個人而言,我將在一個明確使用它們的函數的文件中定義jQuery或Underscore - 但是像一個簡單的沒有裝飾的Backbone模型文件,它們**是cruft。* – nikoshr