使用_super进行_setOption似乎与文档不一致?

时间:2012-12-11 16:39:29

标签: jquery-ui jquery-ui-widget-factory

我相信我在jQuery UI 1.9.x的新_super方法中发现了一个错误,但是在我报告它之前想要先由你们运行它。我认为对那些人来说这将是一个简单的投票。

这是我要提交的门票。它详细说明了这个错误:

  

根据文档,_super()不带参数。然而,   在_setOption()中使用时,这不会按预期工作:   http://jsfiddle.net/grinn/8jKk8/1/

     

正如您可以通过单击“更改文本”按钮看到的那样   尽管_super被正确调用,但文本选项仍未更新,   根据文件   http://api.jqueryui.com/jQuery.widget/#method-_super

     

但是,如果您将键和值传递给_super,它确实可以正常工作:   http://jsfiddle.net/grinn/8jKk8/2/

     

我通过查看使用_super来发现这种解决方法   jQuery UI代码本身。

     

我将此作为错误而不是文档问题提交,因为它   似乎_super预计可以作为文档说明。

     

在Firefox 17,Chrome 23和IE 9中测试。

1 个答案:

答案 0 :(得分:0)

我决定不报告这个问题。从内部jQuery UI中使用它的事实来看,正如我在下面描述的那样,我认为文档只是有点模糊。对于那些遇到同样问题的人来说,使用_super的正确方法似乎是通过您的参数,例如:

    _setOption: function (key, value) {
        // Your code goes here...
        this._super(key, value);
    }

......或更一般地说:

    _setOption: function (key, value) {
        // Your code goes here...
        this._superApply(arguments);
    }