本文主要給大家介紹的是關于Require.JS中define定義方式的相關內容,分享出來供大家參考學習,下面來看看詳細的介紹:
定義簡單的鍵值對
define({ color: "black", size: "unisize" }); 定義不帶依賴的函數
define(function () { //Do setup work here return { color: "black", size: "unisize" } }); 存在依賴的函數式定義
如果模塊存在依賴:則第一個參數是依賴的名稱數組;第二個參數是函數,在模塊的所有依賴加載完畢后,該函數會被調用來定義該模塊,因此該模塊應該返回一個定義了本模塊的object。依賴關系會以參數的形式注入到該函數上,參數列表與依賴名稱列表一一對應。
define(["./cart", "./inventory"], function(cart, inventory) { //return an object to define the "my/shirt" module. return { color: "blue", size: "large", addToCart: function() { inventory.decrement(this); cart.add(this); } } } ); 將模塊定義為一個函數
對模塊的返回值類型并沒有強制為一定是個object,任何函數的返回值都是允許的。此處是一個返回了函數的模塊定義:
define(["my/cart", "my/inventory"], function(cart, inventory) { //return a function to define "foo/title". //It gets or sets the window title. return function(title) { return title ? (window.title = title) : inventory.storeName + ' ' + cart.name; } } ); 定義一個命名模塊
你可能會看到一些define()中包含了一個模塊名稱作為首個參數:
define("foo/title", ["my/cart", "my/inventory"], function(cart, inventory) { //Define foo/title object in here. } ); 總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對武林網的支持。
新聞熱點
疑難解答