我无法设置简单的铁:路由器示例:(docs,sample app)
meteor create testapp
cd testapp
home.html的:
<template name="Home">
<h1>Welcome</h1>
home
</template>
router.js :
Router.route('/', function () {
this.render('Home'); // Also tried 'home'
});
启动服务器:
meteor
然后我得到(客户端):
Exception from Tracker recompute function: Error: Couldn't find a template named "/" or "". Are you sure you defined it?
at null._render (http://localhost:3000/packages/iron_dynamic-template.js?32038885cb1dad7957291ffebfffcb7f8cd57d20:239:17)
at doRender (http://localhost:3000/packages/blaze.js?88aac5d3c26b7576ac55bb3afc5324f465757709:1853:25)
...
我做错了什么?
注意:如果我克隆the example application(basic.html和basic.js),我会得到完全相同的错误。
meteor list
autopublish 1.0.1 Publish the entire database to all clients
insecure 1.0.1 Allow all database writes by default
iron:router 0.9.4 Routing specifically designed for Meteor
meteor-platform 1.1.2 Include a standard set of Meteor packages in your app
此外:
meteor --version
Meteor 0.9.4 <- Why all standard packages and meteor platform are > 1.0 and this is 0.9.4 ?
答案 0 :(得分:2)
目前,iron:router
有两种版本。
iron:router@0.9.4
是您在键入meteor add iron:router
时默认添加的版本,此版本是iron:router
的“遗留”分支中的最新版本,它出现在一年多以前,它是每个人都可能仍在使用的那个,尽管他们肯定会更新到...... iron:router@1.0.0-preX
与X = 4
,这是对向后兼容的软件包的完全重写,但引入了一个新的,更好,更精美的API。当流星在今年晚些时候达到1.0.0时,这个版本可能会被设置为默认值。问题是iron:router
的github页面显示了这个特定的分支(1.0.0-pre4
)以及人们认为可以与0.9.4
一起使用的示例。这意味着您最有可能使用错误版本的铁路由器,而是使用meteor remove iron:router
和meteor add iron:router@1.0.0-pre4
将其删除。
推荐阅读以了解最新的iron:router
语法:
http://eventedmind.github.io/iron-router/
有时候指南并不是完全与预发行版本保持同步,如果你想了解最新的东西,请看看github问题。