2

我是车把和 Meteor 的新手,我正在尝试用一个新项目来实现Skeleton 。但是,当我将默认 Skeleton 代码放入新的 Meteor 项目时,我收到以下错误:

捆绑应用程序时出现异常:

错误:无法在某行解析.. um .. 一些 HTML 文件。对不起

我的阅读表明这与车把不是正常的 HTML 和 Doctype 行没有被正确解析有关吗?

究竟是什么导致了这个错误,我该如何修复它?

4

2 回答 2

2

记住.htmlMeteor 中的文件实际上是一种用于定义 Handlebars 样式模板的文件格式,而不是我们习惯于从服务器看到的 HTML 文档,这很有帮助。Meteor 应用程序中不需要完整的 HTML 文档,因为每个 Meteor 客户端通过运行从服务器发送的 JavaScript 在浏览器中构建自己的 DOM。

Meteor 服务器发送给客户端的唯一 HTML 是一个初始的基本文档,它仅引用样式表和带有<link rel...>.

因此,这些 Handlebars 文件中允许的唯一三个顶级标签是:

  • <template>: 定义 Handlebars 样式模板。模板标签内的 HTML 在客户端编译为 JS 函数。

  • <head><head>项目中每个 HTML 文件中所有标签的内容都被连接起来,并作为文档的初始 HEAD 部分传递给浏览器。

  • <body>: 同上,但定义了<body>标签的初始内容而不是<head>.

DOCTYPE例如,这里没有位置。(不幸的是,也没有 HTML 注释的地方,但我们会努力解决这个问题。)

于 2012-05-13T21:28:10.163 回答
1

此外,它可能与您放置代码的位置一样简单。如果您将它同时发送到客户端和服务器,您通常会使用服务器不会(也不应该)处理的 javascript/其他代码收到此错误。

确保将代码分开,以便应该仅在客户端上的内容实际上仅在客户端上。例如,如果您在通用文件夹中有多个 html 文件,服务器将尝试解释它们。

于 2012-05-14T18:40:30.000 回答