gpt4 book ai didi

javascript - 将 Meteor iron-router 中的 onBeforeAction 钩子(Hook)移动到不同的文件

转载 作者:行者123 更新时间:2023-11-30 00:21:46 26 4
gpt4 key购买 nike

我使用以下函数作为我的 onBeforeAction Hook 的助手:

var gameFilter = function () {
this.subscribe('singleGame', this.params.slug);
var game = this.data();
if (game) {
if (game.multiplayer) {
this.redirect('multiPlayerPage', {slug: this.params.slug});
} else {
this.subscribe('singlePlayerPage', this.params.slug);
}
} else {
this.render(this.notFoundTemplate);
}
this.next();
};

我在我的 route 这样使用它:

onBeforeAction: [gameFilter, playerFilter]

现在这太棒了。但是,我想将所有过滤器移动到不同的文件。所以我在我的 lib 目录中创建了一个新文件,并将以下代码放入:

gameFilter = function () {
this.subscribe('singleGame', this.params.slug);
var game = this.data();
if (game) {
if (game.multiplayer) {
this.redirect('multiPlayerPage', {slug: this.params.slug});
} else {
this.subscribe('singlePlayerPage', this.params.slug);
}
} else {
this.render(this.notFoundTemplate);
}
this.next();
};

问题是,我得到一个 ReferenceError,说 gameFilter 没有定义。我认为这个问题是由 Meteor 的文件加载顺序引起的。有可能解决这个问题吗?

最佳答案

我在使用 Meteor 时遇到了类似的问题。解决方法是将文件或文件夹的名称更改为数字,以便首先加载它。在我的情况下,它是一个名为 media.js 的文件,我更改为 1_media.js 并且它有效

关于javascript - 将 Meteor iron-router 中的 onBeforeAction 钩子(Hook)移动到不同的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32863890/

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