2016-05-03 14 views
0

我有一个小问题。下面的代码片段效果很好,如果我直接在body标签倾倒使用Iron路由器从集合中提取数据

 {{#each tasks}} 
    <ol> <li>Router Name: {{ routerName }}</li> 
    <li>Router Enable: {{Enable}}</li></ol> 
     {{/each}} 

然而,当我在模板中把它包起来,并尝试通过路线(铁路由器)调用它,它无法显示查询结果。

<template name ='ManagementConfig' 
     {{#each tasks}} 
    <ol> <li>Router Name: {{ routerName }}</li> 
    <li>Router Enable: {{Enable}}</li></ol> 
     {{/each}} 
</template> 

Route.js:

Router.route('/ManagementConfig',{ name:'ManagementConfig' }); 

一切除了模板和路线内以及上述作品。我哪里错了?

回答

1

您的ManagementConfig模板没有访问任务对象。你可以通过创建一个辅助方法并传递数据来解决这个问题。

Template. ManagementConfig.helpers({ 
    'tasks': function(){ 
     //Change this to your task data 
     return Lists.find({}, {sort: {name: 1}}); 
    } 
}); 
+0

谢谢!这工作。所以我的意思是,每次你想通过路径查询或显示数据库的东西时,我需要定义一个单独的助手类,是否正确? – blueren

+0

@blueren是的,你应该使用帮助函数来传递数据,但也有其他的方式来传递数据。你应该看流星文件。 Helper函数不仅可用于传递数据,还可用于过滤某些内容。助手是你在定期使用流星应用程序时要使用的东西,以便清楚地了解它。 – Nakib

相关问题