我正在查看Backbone.js文档,我注意到许多方法接受您可以提供的选项,但没有指定这些选项。
例如,如果查看remove()方法,您将看到以下内容:
remove集合.remove(模型,[选项])
从集合中移除模型(或模型数组),并传回它们。每个模型可以是Model执行严修、id字串或JS对象,以及collection. get之id参数可接受的任何值。为每个模型引发“remove”事件,之后再引发单一的“update”事件。模型在移除之前的索引会以options. index的形式提供给接听程式。
它并没有提到它接受什么样的选项,Backbone.js文档中的许多方法并没有指定它们接受的选项。
如何确定backbone.js方法接受哪些选项?
1条答案
按热度按时间ngynwnxp1#
删除集合。remove(模型,[选项])
从集合中移除模型(或模型数组),并传回它们。每个模型可以是Model执行严修、id字串或JS对象,以及collection. get之id参数可接受的任何值。为每个模型引发“remove”事件,之后再引发单一“update”事件,除非{silent:true}。模型在移除之前的索引会以options. index的形式提供给接听程式。
最新的Backbone文档至少列出了一个选项,并且它是适用于任何触发事件的Backbone方法的常见选项之一:
silent
。如果设置为true,此选项将导致方法不触发通常会触发的事件。那么,为什么不澄清一下
silent
(或者任何可能应用于方法的选项)是文档中唯一的选项呢?为什么要让它成为一个模棱两可的options
呢?options
是Backbone提供的一种通用机制,用于获取任何类型的辅助信息,因此options
还可以通过以下几种方式使用,而不仅仅是文档中描述的选项...1.该方法可能会采用一些没有文档记录的选项,因为它们只适用于有限数量的人,或者仅仅是因为它们是新的,而Backbone团队还没有费心为它们添加文档。如果你想“弄清楚”这些选项是否存在,你要么在触发它们添加的GitHub问题中阅读它们,或者自己通读 Backbone.js 源代码。我强烈推荐后一种选择:Backbone的源代码可读性很强,你可以从中学到很多东西。
1.您可能希望覆盖本机方法,在这种情况下,您可能希望通过同一个
options
对象使用您自己的选项options
传递给由remove
(或任何事件触发方法)发出的trigger
调用,这意味着您可以使用它们将信息作为您自己的自定义“选项”传递给事件处理程序