gpt4 book ai didi

javascript - meteor 铁路由器 : When is 'data' called?

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

这是有问题的路线:

this.route('meeting', { 
path: '/meeting/:_id',
template: 'meeting',
waitOn: function(){
console.log("iron-router: meeting waitOn");
return Meteor.subscribe('meetings');
},
data: function() {
console.log("iron-router: meeting data");
return Meetings.findOne({"uuid":this.params._id});
},
onBeforeAction: OnBeforeActions.loginRequired,
action: function () {
console.log("iron-router: meeting action");
if (this.ready()) {
this.render();
}
}
});

session 模板有一个嵌套的日历模板,其中包含28个模板。我试图弄清楚何时/为何调用 iron-router data 函数,因为我在加载页面时看到了这一点:

iron-router: meeting waitOn
iron-router: meeting data
iron-router: meeting data
iron-router: meeting waitOn
iron-router: loginRequired
iron-router: meeting action
iron-router: meeting data
iron-router: meeting data
(28x) iron-router: meeting data

这是对同一件事的多次重复调用!为什么?

最佳答案

只要数据中的任何反应变量发生更改,就会调用数据。在您的例子中,Meetings 集合。

当您的应用程序加载时,每当您集合中的每个文档添加到客户端时,它都会重新运行。它最初也会运行一次以注册 react 性依赖项。

它将运行多次,如果有更改,它们将被绘制到 DOM 中。如果不是,它将不会进一步更新 DOM。重新运行是为了检查更改。

关于javascript - meteor 铁路由器 : When is 'data' called?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30515989/

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