我正在使用iron:router软件包处理流星.
我的JavaScript文件包含:
Router.route('/', function () {
this.render('home');
}, {
name: 'home'
});
Router.route('/hello', function () {
this.render('hello');
});
我的html文件包含:
<head>
<title>test</title>
</head>
<body>
<h1>Welcome to Meteor!</h1>
</body>
<template name="hello">
<button>Click Me</button>
<p>You've pressed the button {{counter}} times.</p>
</template>
<template name="home">
<h2>Home</h2>
<p>You are on the home screen.</p>
</template>
无论我写的是什么(在the tutorial中指定为localhost:3000 / hello或localhost:3000 /),无论它什么都不会渲染任何模板.它仅显示标题“ Welcome to Meteor!”.就是这样.
当我写任何其他未声明的地址(例如localhost:3000 / abc)时,它显示了我:
Welcome to Meteor! Oops, looks like there’s no route on the client or
the server for url: “07001.”
因此,它肯定在javascript文件中做正确的事,因为它可以识别它应该知道的模板,但是当编写正确的地址时,它什么也没显示.
我尝试查看其他解决方案,以及其他解决方案,检查软件包名称是否为“ iron:router”而不是“ iron-router”,但没有任何效果.请帮我…
编辑:根据要求,这是项目https://github.com/yokhen/test2的存储库
解决方法:
首先,我必须添加EJSON包,因为iron:router没有看到它(尽管我在Windows上进行了测试,也许这就是为什么我遇到这个问题)
流星添加ejson解决了它
您的项目目录应类似于:
Routes.js
Router.route('/', function () {
this.render('Home');
});
Router.route('/items');
test2.js
Template.items.helpers({
});
Template.items.events({
});
Template.Home.helpers({
});
Template.Home.events({
});
test2.html
<template name="Home">
<h1>Simplest template home ever</h1>
</template>
<template name="items">
<h1>Simplest home items template</h1>
</template>