我是车把和 Meteor 的新手,我正在尝试用一个新项目来实现Skeleton 。但是,当我将默认 Skeleton 代码放入新的 Meteor 项目时,我收到以下错误:
捆绑应用程序时出现异常:
错误:无法在某行解析.. um .. 一些 HTML 文件。对不起
我的阅读表明这与车把不是正常的 HTML 和 Doctype 行没有被正确解析有关吗?
究竟是什么导致了这个错误,我该如何修复它?
我是车把和 Meteor 的新手,我正在尝试用一个新项目来实现Skeleton 。但是,当我将默认 Skeleton 代码放入新的 Meteor 项目时,我收到以下错误:
捆绑应用程序时出现异常:
错误:无法在某行解析.. um .. 一些 HTML 文件。对不起
我的阅读表明这与车把不是正常的 HTML 和 Doctype 行没有被正确解析有关吗?
究竟是什么导致了这个错误,我该如何修复它?
记住.html
Meteor 中的文件实际上是一种用于定义 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 注释的地方,但我们会努力解决这个问题。)
此外,它可能与您放置代码的位置一样简单。如果您将它同时发送到客户端和服务器,您通常会使用服务器不会(也不应该)处理的 javascript/其他代码收到此错误。
确保将代码分开,以便应该仅在客户端上的内容实际上仅在客户端上。例如,如果您在通用文件夹中有多个 html 文件,服务器将尝试解释它们。