如何在Meteor 1.3.1中使用FlowRouter和"Import"

3

我正在尝试向我的Meteor应用添加一些简单的路由,这是我第一次尝试使用FlowRouter。我使用以下命令进行了安装:

meteor add kadira:flow-router
meteor add kadira:blaze-layout

然后,我创建了一个lib/routes.js文件,包含以下内容:

import '../imports/ui/body.js';

FlowRouter.route('/', {
  name: 'home',
  action: function(params) {
    console.log("home");
    BlazeLayout.render('body');
  }
});

imports/ui/body.js 文件会加载其他一些模板,代码如下:

import './moment.js';

moment.js 导入 ./moment.html,如下所示:

import './moment.html';

但是当我访问/时,出现了以下错误:
Error: Cannot find module './moment.html'

重要的是要明白,如果我完全绕过FlowRouter,只需将import '../imports/ui/body.js放入我的client/main.js文件中,一切都可以正常工作。
有什么想法吗?感谢您的帮助!

2
好的,在进一步尝试后,我发现如果将lib/routes.js移动到client/routes.js中,则可以工作。也许它试图在服务器端运行路由而找不到我的模板? - nerdburn
1个回答

0

我刚遇到了同样的问题,但是我认为因为routes.js在lib中,所以它会首先被加载,将其移动到clients意味着它会与其他文件一起加载,因此现在可以找到它。不确定这是否正确,但正如你所知道的那样,它有效。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接