带参数的 Dat.gui 函数调用?

Posted

技术标签:

【中文标题】带参数的 Dat.gui 函数调用?【英文标题】:Dat.gui function invocation with parameters? 【发布时间】:2014-10-04 09:34:20 【问题描述】:

我对@9​​87654322@ 很陌生。根据this little tutorial,您可以从gui调用对象的函数,只需将其传递给gui的add函数:

gui.add(fizzyText, 'explode');

是否可以将参数传递给explode 函数?

谢谢!

【问题讨论】:

不,您不能将参数传递给按钮的功能。你到底想做什么?对多个按钮使用相同的功能? 是的 manji,我知道我可以通过“onChange”回调获得类似的行为。但我只是想确定没有其他方法可以走。 :-) 如果您将其写为答案,我将标记为最佳答案。 【参考方案1】:

如果您通过Function.bind()创建此函数的副本,则可以将一些参数传递给explode()。

gui.add(explode : fizzyText.explode.bind(this, param_1, param_2), "explode");

更多信息Function.prototype.bind()

我也必须这样做,以重用我的功能,它对我来说很好:)

【讨论】:

【参考方案2】:

无法将参数传递给按钮的函数。但是,您可以在该函数中访问对象的其他属性:

function myViewModel() 
    var self = this;

    this.name = "name1",
    this.score = 9,
    this.check = function() 
        if(self.score >= 5)  // access to the score property
            alert('you pass!');
         else 
            alert('try again.');
        
    
;

【讨论】:

以上是关于带参数的 Dat.gui 函数调用?的主要内容,如果未能解决你的问题,请参考以下文章

js调用一个带参数的函数,却不给参数,会怎么处理

带参数的函数的调用()

请教Inno Setup,带多个参数的函数调用问题

如何定义带参数或不带参数调用的函数? [复制]

调用带参数的函数

AWS lambda 函数调用另一个带参数的 lambda 函数