我知道这已经被问了一百万次,但我似乎无法在这一行中找到非法字符:
window.require.register("templates/application", Function('exports, require, module', "module.exports = Ember.TEMPLATES[module.id.replace('templates\\','')] = Ember.Handlebars.template(function anonymous(Handlebars,depth0,helpers,partials,data) {\nthis.compilerInfo = [2,'>= 1.0.0-rc.3'];\nhelpers = helpers || Ember.Handlebars.helpers; data = data || {};\n var buffer = '', hashTypes, escapeExpression=this.escapeExpression;\n\n\n hashTypes = {};\n data.buffer.push(escapeExpression(helpers._triageMustache.call(depth0, \"outlet\", {hash:{},contexts:[depth0],types:[\"ID\"],hashTypes:hashTypes,data:data})));\n data.buffer.push(\"\\n\");\n return buffer;\n \n});\n//@ sourceURL=templates/application.hbs"));
此行来自使用 node/brunch 从https://github.com/cbosco/ember-brunch的简单空分支生成的 app.js 文件。
我得到错误:
Uncaught SyntaxError: Unexpected token ILLEGAL
在 Chrome 中指向 localhost:3333 时。Firefox 给出以下错误:
SyntaxError:未终止的字符串文字
看起来它在 app.js 中生成的“模板”代码中。同样的问题也发生在 cbosco todomvc 项目中。
重建步骤:
- git clone git://github.com/cbosco/ember-brunch.git ember-skeleton -b empty
- 早午餐新 my_app -s ./ember-skeleton
- cd my_app
- 早午餐手表-s
- 将浏览器指向 localhost:3333