gpt4 book ai didi

javascript - 如何将 backbone.js 与命名空间一起使用?

转载 作者:行者123 更新时间:2023-11-30 06:04:58 25 4
gpt4 key购买 nike

在过去一个小时左右的时间里,我一直在尝试让命名空间与 backbone.js 一起工作。

我已阅读:How do I declare a namespace in JavaScript?

我尝试了所有方法。这是问题所在:

Backbone.Controller 想要通过构造函数(“new 关键字”)进行初始化,否则 Backbone.history 将不会被设置。这是我试图放入命名空间的代码,例如“Site.Controllers”

var MainController = Backbone.Controller.extend({

routes: {
"help": "help", // #help
},

help: function(){}
});

var ws = new MainController

每当我尝试将 MainController 放入某个命名空间时,backbone.js 会提示 MainController 不是构造函数 - 当然是,因为似乎没有任何方法可以使用构造函数创建命名空间“树” .如果你们愿意,我可以列出我尝试过的所有方法,但它与上面提供的链接完全相同。我没有尝试将其放入闭包中,因为这被认为非常慢。

最佳答案

var namespace = {
MainController: Backbone.Controller.extend({ ... }),
HelpController: Backbone.Controller.extend({ ... }),
...
};

我对您要实现的目标感到困惑。创建 namespace 的几乎失败证明方法是:

var namespace = (function() {
...

return {
...
};

})();

另外,是的,闭包确实更慢。但我不会担心这个,除非你创建了数百万次闭包。

关于javascript - 如何将 backbone.js 与命名空间一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5627955/

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