gpt4 book ai didi

javascript - Meteor 函数在发布和订阅完成加载集合之前执行

转载 作者:行者123 更新时间:2023-11-28 00:10:28 24 4
gpt4 key购买 nike

我有一个 meteor 模板助手,它具有搜索分数文档的功能。如果找不到匹配的文档,则会为用户创建一个新文档。不幸的是,meteor 函数在发布和订阅函数完成之前执行 var Score = UserScores.findOne();。每次都会创建一个新的 UserScore 文档。如果我打开自动发布,这个问题就会消失,并且不会创建重复的记录。如何确保在模板助手执行之前先执行发布和订阅函数?

我是否需要在/lib文件夹中放置一个meteor方法才能正确执行,或者有没有办法在客户端执行它?

var score = UserScores.findOne();

if(!score) {
score = {
userId: Meteor.userId(),
total: 0,
goal: 200
};
UserScores.insert(score);
}

最佳答案

最简单的方法是进行模板级订阅。

Template.myTemplate.onCreated(function() {
var subscription = this.subscribe('publicationName', publicationArguments);
}

这是一种非常简单的方法,但首先运行助手应该不会有任何问题。

编辑:Discover Meteor 博客有一篇关于模板级订阅的精彩文章。我强烈推荐阅读它:https://www.discovermeteor.com/blog/template-level-subscriptions/

关于javascript - Meteor 函数在发布和订阅完成加载集合之前执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30950301/

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