【发布时间】:2016-12-26 16:11:03
【问题描述】:
我正在关注这个例子https://kadira.io/academy/meteor-routing-guide/content/rendering-blaze-templates 当我点击我的链接时,整个页面正在重新加载。有没有办法只加载需要的模板部分而不是整个页面?
编辑:我还注意到另一个问题。 {{> Template.dynamic}} 之外的所有内容都被渲染了两次。
这是我的项目示例。 https://github.com/hayk94/UbMvp/tree/routing
编辑:将内容放入 mainLayout 模板并从那里开始渲染修复了双重渲染问题。但是由于此代码而发生重新加载问题
Template.mainLayout.events({
"click *": function(event, template){
event.stopPropagation();
console.log('body all click log');
// console.log(c0nnIp);
var clickedOne = $(event.target).html().toString();
console.log('This click ' + clickedOne);
//getting the connID
var clientIp = null // headers.getClientIP(); // no need for this anymore
var clientConnId = Meteor.connection._lastSessionId;
console.log(clientIp);
console.log(clientConnId);
Meteor.call("updateDB", {clientIp,clientConnId,clickedOne}, function(error, result){
if(error){
console.log("error", error);
}
if(result){
}
});
}, // click *
});//events
如果没有将此事件附加到模板,则路由可以在没有任何重新加载的情况下工作,但是一旦我附加它,问题仍然存在。 你知道为什么这段代码会导致这样的问题吗?
【问题讨论】:
标签: meteor meteor-blaze flow-router