带路由器的流星 - 模板事件未触发
Meteor with Router - Template Events not triggering
我有很多代码在工作,但需要一种方法来使用Meteor切换"页面",最常见的建议解决方案是使用iron-router
。按照他们的文档,我将每个页面放入一个Template
中,如下所示:
<template name="home">
<input type="date" id="start-date" style="width:1px;height:1px;padding:0;">
<!-- More Random Code -->
</template>
在我使用后,它正在正确渲染:
Router.route('/', function () {
// render the Home template with a custom data context
this.render('home', {data: {}});
});
在我使用之前:
Template.body.events({
});
我改成了:
Template.home.events({
});
但是,加载到其中的代码不再有效。其中调用的一个函数是:
"blur #start-date": function (event) {
if( Meteor.user() && !StartDate.find({email:Meteor.user().emails[0].address}).fetch().length){
var date = event.target.value;
StartDate.insert({
date: date,
createdAt: new Date(), // current time
user: Meteor.user()._id,
email: Meteor.user().emails[0].address
});
}else{
}
}
当您使用Template.body时,它可以工作,因为它在文件的正文区域内运行。在您提供的"home"模板的代码段中,没有正文,即使它被识别为模板,也没有什么可以实际呈现的。添加头部、身体标签以及实际渲染事物的区域。另请参阅:流星嵌套视图和产量
相关文章:
- 在Angular ui路由器中,如何将事件从一个视图发送到另一个视图
- Iron:路由器在更改路由器上添加事件
- 未从url激发事件上的主干路由器
- 无法解除绑定并关闭我的主干路由器中的事件
- 主干路由器导航到../#/<路由>而不触发路由器事件.如何
- 在一个控制器 ui 路由器中的所有 $state.go() 事件之前运行 check
- 带路由器的流星 - 模板事件未触发
- 从应用路由器触发事件
- 在 ui 路由器状态之间发送事件
- 一个“;监听路由器”;(响应视图/模型中的路由器事件)
- Angular 2路由器全局状态更改事件
- Marionette事件聚合器vs主干路由器
- 主干路由器创建多个视图,从而导致多个事件绑定到同一视图
- Ember.js-在控制器/路由器链上传播事件
- Emberjs常见路由器事件
- 访问页面时未触发主干网/Marionette路由器事件
- 如何在Backbone.js中跟踪路由器更改事件
- 路由器(发射器)和处理器(监听器)中的Node.js事件
- React-router:从路由器获取参数,监听事件失败
- Angular UI路由器:我应该在哪里改变状态?控制器吗?服务?事件监听器