流星大型应用程序 - 未公开

时间:2013-01-01 17:04:59

标签: javascript meteor

我正在研究Meteor中的大型企业应用程序。我遇到的问题是,一旦我的html页面超过900多行我开始偶尔(更常见的是更多的代码行)得到以下错误:

Your app is crashing. Here's the latest log.

Errors prevented startup:
Exception while bundling application:
Error: unclosed <body> - line 7, file /var/www/www.######.com/#######.html
<body>
    at new html_scanner.scan.parseError (/usr/lib/meteor/packages/templating/html_scanner.js:23:14)
    at Object.html_scanner.scan (/usr/lib/meteor/packages/templating/html_scanner.js:92:15)
    at /usr/lib/meteor/packages/templating/package.js:46:32
    at _.extend.add_file (/usr/lib/meteor/app/lib/bundler.js:195:5)
    at self.api.add_files (/usr/lib/meteor/app/lib/bundler.js:96:16)
    at Array.forEach (native)
    at Function._.each._.forEach (/usr/lib/meteor/app/lib/third/underscore.js:79:11)
    at self.api.add_files (/usr/lib/meteor/app/lib/bundler.js:95:11)
    at Array.forEach (native)
    at Function._.each._.forEach (/usr/lib/meteor/app/lib/third/underscore.js:79:11)
Your application is crashing. Waiting for file change.

如果我多次刷新我的页面,它最终会起作用,我知道没有未关闭的标签。我通过几个html lint程序运行html,没有错误。我的代码是专有的,所以我不能发布它,但是想知道其他人是否遇到过这个问题?

我想知道html_scanner是否存在问题,但没有时间调试模板包。任何想法将不胜感激。

2 个答案:

答案 0 :(得分:1)

我试图提出一个900多行样本来复制这个问题,但是无法用我想出的基本html做到这一点。我确实提出了一个有希望帮助别人的解决方案。我没有内置一个大型html,而且内置了模板,而是为模板标签中的每个“视图”创建了一个单独的html:

<template name="testView">(content)</template>

然后使用以下命令将每个视图注入html主页:

{{> testView }}

它似乎解决了上面的问题,我的主要html页面下降到300行,每个视图都在自己的html文件中。

答案 1 :(得分:1)

错误消息似乎在抱怨未关闭的标记。我会检查您的HTML并确保正确关闭所有代码。

与您的特定问题无关,但在将标签包装到标签中时遇到了类似的错误。