gpt4 book ai didi

javascript - Backbone Marionette 可以为所有模块定义添加参数

转载 作者:行者123 更新时间:2023-11-30 17:06:18 24 4
gpt4 key购买 nike

我想弄清楚是否有办法通过超过标准:

模块、应用程序、 Backbone 、 Marionette 、$、_

所有模块声明的参数定义。我不想在 app.module 调用中添加比名称和函数更多的参数,因为那样只会将这些变量传递给包含它们的模块。如果有人知道如何做到这一点,我将不胜感激。

最佳答案

你可以只定义一个额外的函数,你可以像这样使用:

function moduleWrapper(func) {
var extraArg1 = something, extraArg2 = somethingelse;
return function() {
//Take the arguments obj and convert it to an array
var args = Array.prototype.slice.call(arguments);
//splice the extra arguments into the array
args.splice(5, 0, extraArg1, extraArg2);
//then call the function passed to the wrapper
return func.apply(this,args);
};

}

然后你可以传递一个带参数的函数

function example(MyModule, MyApp, Backbone, Marionette, $, _, extraArg1, extraArg2){}

像这样

MyApp.module("MyModule",moduleWrapper(example));

包装器将只使用您想要的参数调用您的原始函数。

关于javascript - Backbone Marionette 可以为所有模块定义添加参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27952545/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com