【发布时间】:2019-06-12 01:42:59
【问题描述】:
在学习 Meteor TODO 应用程序教程时,我在第 10 步 发布和订阅遇到了一个问题。
问题是 imports/ui/task.js 中的这段代码不再有效:
import { Meteor } from 'meteor/meteor'
import { Template } from 'meteor/templating';
import './task.html'; // <= fails in the browser
目录imports/ui包含:
body.html body.js task.html task.js
我可以import './body.html'; 很好,但不能import './task.html'; 或任何其他 HTML 文件 - 例如我尝试将 task.html 重命名为 flask.html 并相应地导入它,但仍然以同样的方式失败。
尝试在 Chrome 中调试它,我发现它看到了一组不同的文件:
查看this question我能够找到生成的app.js,其中有
Template.body.addContent((function() {
但没有(预期?)
Template.task.addContent
所以我的问题是为什么 Meteor 构建没有接收 task.html?
注意:我刚刚将 Meteor 更新到 1.8.0.2。这可能是该版本中的新错误吗?
更新
我使用相同的教程从头开始,并且顺利完成了第 10 步。
然后我对这两个项目进行了比较。到目前为止,我无法找到导致此问题的 root 原因,但是在
中可以看到 a 原因.meteor/local/build/programs/web.browser/app/app.js
原始(右侧)缺少从 task.html
生成的部分问题仍然是为什么?有没有可以看的编译日志?
【问题讨论】:
-
你是用
meteor create创建的项目还是从gihtub克隆的? -
它是使用
meteor create创建的,我只是按照 TODO 应用教程进行操作。我也尝试过meteor reset,但没有成功。 -
好的,我会尝试重现
-
您能描述一下“浏览器失败”的原因吗?你能给我们错误信息吗?据我所知,您的 task.html 文件可能有错误,但如果没有更多信息,很难提供帮助
-
我的经验是,有时当 Blaze 遇到错误时,它只会生成一个空(或丢失)的文件。所以这很可能是 task.html 中的语法错误。你能用那个文件的内容编辑你的问题吗?
标签: javascript meteor