2015-12-03 82 views
3

我在看Backbone.js文檔,我注意到很多方法接受你可以提供的選項,但沒有指定它們。如何確定backbone.js方法接受哪些選項?

例如,如果你看remove() method,你會看到:

除去 collection.remove(模型,[選項])

刪除的模型(或模型的陣列)從收集,並返回它們。每個模型可以是一個Model實例,一個id字符串或一個JS對象,任何值都可以作爲collection.get的id參數。爲每個模型啓動一個「刪除」事件,然後再啓動一個「更新」事件。刪除之前的模型索引可作爲options.index供聽衆使用。

它沒有提及它接受什麼樣的選項。 Backbone.js文檔中的許多方法都沒有指定它們接受的選項。

如何確定backbone.js方法接受哪些選項?

+2

您可以隨時打開源代碼,並檢查什麼方法從第二個參數選項處理。順便說一句,在[github](https://github.com/jashkenas/backbone/)上提出一個關於這個問題的問題,以便與「backbone」背後的人取得聯繫,而不是在這裏問問。 –

+3

如果它不在文檔中,請使用源代碼。我不確定你在這裏會得到什麼樣的答案?有關所有方法可用的所有選項的全面指南或鏈接到github回購的鏈接? – ivarni

回答

0

刪除collection.remove(模型,[選項])

從集合中刪除一個模型(或模型的陣列),並返回 它們。每個模型可以是一個Model實例,一個id字符串或一個JS對象, 任何可接受的值作爲collection.get的id參數。除非{silent:true}被傳遞,否則將爲每個模型啓動一個 「刪除」事件,然後再啓動一個「更新」事件, 。刪除前的模型索引爲 ,作爲options.index可供聽衆使用。

最新的Backbone文檔列出了至少一個選項,它是適用於任何引發事件的Backbone方法的常見選項之一:silent。如果設置爲true,該選項將導致該方法不觸發它通常會發生的事件。

那麼爲什麼不說明silent(或任何可能適用於某個方法的選項)是文檔中的唯一選項?爲什麼離開它模棱兩可options

options是一個通用的機制骨幹爲採取任何形式的輔助信息,所以options也不僅僅是在幾個方面的記錄選項一起使用......

  1. 方法可能採取的選擇因爲它們只適用於有限數量的人,或者僅僅因爲它們是新的,而且骨幹團隊沒有打算爲它們添加文檔,所以它們沒有記錄。如果你想「弄清楚」這些選項存在,你必須在GitHub的問題中閱讀關於它們的內容,或者自己閱讀Backbone源代碼。我強烈推薦後者的選擇:Backbone的源代碼非常可讀,您可以從中學到很多東西。

  2. 你可能要重寫本地方法,在這種情況下,你可能希望通過同options對象

  3. options通過傳遞給trigger呼叫通過remove提出把自己的選項(或任何事件-triggering方法),這意味着你可以用它們通過將信息傳遞給事件處理程序作爲自己的自定義「選項」

相關問題