【问题标题】:Deploy meteor app on meteor servers thorws iron routing error在流星服务器上部署流星应用程序会引发铁路由错误
【发布时间】:2015-01-20 06:00:43
【问题描述】:

我发现了一些类似的问题,但没有明确的答案。我有一个简单的流星应用程序。在本地一切正常,但是当我在流星服务器上部署应用程序时,我得到一个 Iron:router 错误。奇怪的是,当我在 --debug 模式下部署应用程序时工作正常。 这是模板

 <template name="navigationBar">
 </template>
 <template name="homepage">
    {{> navigationBar}}
    <div>....</div>
    {{> footer }}  
 </template>
 <template name="login">
    {{> navigationBar}}
    <div>....</div>
    {{> footer }}  
 </template>

路线是

Router.route('/', function () {
   this.render('homepage');
});
Router.route('/homepage');
Router.route("/login");

【问题讨论】:

  • 仔细看模板代码。 &lt;template&gt; 与第二个和第三个模板中的&lt;/template&gt; 不匹配。实际代码中是这样的吗?修复它有帮助吗?
  • 复制/粘贴错误。在我的 html 中,它们没问题。
  • 有页脚模板吗?
  • 是的。在本地以及当我在调试模式下部署它时工作正常。
  • 确切的铁路由器错误是什么?

标签: meteor iron-router


【解决方案1】:

添加此模板

  <template name="layout">
    <div id="main" class="row-fluid">
      {{> yield}}
    </div>
</template>

助手{{>}} yield 定义一个特殊的动态区域会自动显示对应的路径行为 引用Discover Meteor

现在只需配置布局模板

Router.configure({
 layoutTemplate: 'layout',
 });

并将 Router.rout 更改为此。

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

拥有布局模板应该可以工作并且更好,您可以像这样添加诸如“错误模板”或“等待模板”之类的东西,例如。

 Router.configure({
  layoutTemplate: 'layout',
   notFoundTemplate: 'notFound',
 });

还有html

<template name="notFound">
<h1> DAMN YOU ARE ON THE WRONG PLACE GO BACK TO HOME PAGE </h1>
<a href="{{pathFor 'homepage'}}">Go main</a>
</template>

还有 loadingTemplate 等等。

试一试应该可以的

【讨论】:

  • 谢谢......但由于我的名声很少,我无法投票给你的答案。如果可以的话,给我解释一下。首先,为什么在本地我没有同样的问题。其次,我以前有过这样的,但不是这个 Router.route('/', {name: 'homepage'});我有这个 Router.route('/', function() { this.render('homepage')});为什么不工作?
  • 嗯,我很确定这是一个版本错误,你有哪个 Iron 路由器版本?和流星版本?
  • 当我运行 meteor --version 我得到这个 Meteor 1.0.2.1 但在版本文件中我有这个 meteor@1.1.4 和 iron:router@1.0.6
猜你喜欢
  • 2015-03-31
  • 1970-01-01
  • 1970-01-01
  • 2017-04-04
  • 1970-01-01
  • 1970-01-01
  • 2014-09-03
  • 2015-08-11
  • 2015-06-06
相关资源
最近更新 更多