【问题标题】:Meteor 0.8 and Jade流星 0.8 和翡翠
【发布时间】:2014-03-29 00:04:03
【问题描述】:

我正在尝试将我的应用程序升级到使用新的 Blaze 模板引擎的 Meteor 0.8。

$ meteor update
my-app: updated to Meteor 0.8.0.

$ mrt update

问题是我用的是Jade,运行meteor后提示:

While building the application:
<runJavaScript-38>:167:38: Object #<Object> has no method 'compile' (compiling modules/homepage/client/views/_homepage.jade)
  at Object.html_scanner._handleTag (<runJavaScript-38>:167:38)
  at Object.html_scanner.scan (<runJavaScript-38>:118:20)
  at handler (<runJavaScript-38>:526:30)

我在the new blog post看到我需要用陨石加翡翠。

mrt add jade

但是现在,通过运行 Meteor,出现以下错误:

=> Started proxy.
=> Started MongoDB.     
=> Starting your app...
/Users/mac/.meteor/tools/c2a0453c51/lib/node_modules/fibers/future.js:173
                    throw(ex);
                          ^
TypeError: Cannot read property 'name' of undefined
  at /Users/mac/.meteor/tools/c2a0453c51/tools/packages.js:750:28
  at Function._.each._.forEach (/Users/mac/.meteor/tools/c2a0453c51/lib/node_modules/underscore/underscore.js:87:22)
  at /Users/mac/.meteor/tools/c2a0453c51/tools/packages.js:745:9
  at Array.forEach (native)
  at Function._.each._.forEach (/Users/mac/.meteor/tools/c2a0453c51/lib/node_modules/underscore/underscore.js:79:11)
  at [object Object]._.extend._allHandlers (/Users/mac/.meteor/tools/c2a0453c51/tools/packages.js:744:7)
  at [object Object]._.extend.registeredExtensions (/Users/mac/.meteor/tools/c2a0453c51/tools/packages.js:768:24)
  at [object Object].slice.getSourcesFunc (/Users/mac/.meteor/tools/c2a0453c51/tools/packages.js:1713:41)
  at [object Object]._.extend.build (/Users/mac/.meteor/tools/c2a0453c51/tools/packages.js:279:17)
  at /Users/mac/.meteor/tools/c2a0453c51/tools/packages.js:1088:13
  at Array.forEach (native)
  at Function._.each._.forEach (/Users/mac/.meteor/tools/c2a0453c51/lib/node_modules/underscore/underscore.js:79:11)
  at [object Object]._.extend.build (/Users/mac/.meteor/tools/c2a0453c51/tools/packages.js:1087:7)
  at [object Object]._.extend.getForApp (/Users/mac/.meteor/tools/c2a0453c51/tools/library.js:285:9)
  at /Users/mac/.meteor/tools/c2a0453c51/tools/bundler.js:1762:25
  at Object.capture (/Users/mac/.meteor/tools/c2a0453c51/tools/buildmessage.js:191:5)
  at Object.exports.bundle (/Users/mac/.meteor/tools/c2a0453c51/tools/bundler.js:1697:31)
  at [object Object]._.extend._runOnce (/Users/mac/.meteor/tools/c2a0453c51/tools/run-app.js:396:32)
  at [object Object]._.extend._fiber (/Users/mac/.meteor/tools/c2a0453c51/tools/run-app.js:520:28)
  at /Users/mac/.meteor/tools/c2a0453c51/tools/run-app.js:340:12

我看不出错误来自哪里。

【问题讨论】:

  • 当我从一个空项目开始时,使用新的 jam 包对我有用。在 0.8 之前你是如何编译你的翡翠文件的?
  • 在 .meteor/packages.js 中,我只有以下包:standard-app-packages、coffeescript、accounts-base、accounts-password、iron-router、belt-jade-handlebars、email ,车把助手和 npm。这行得通,但我没有添加玉包。
  • 有趣。那么当你mrt remove belt-jade-handlebars 时会发生什么?
  • 你更新了iron-router吗?旧版本不适用于 Blaze。

标签: meteor meteorite


【解决方案1】:

问题似乎来自belt-jade-handlebars 包。我真的不知道发生了什么,但我猜它与新的 Blaze 引擎不是最新的。如果可以,请删除它。

mrt remove belt-jade-handlebars.

【讨论】:

    猜你喜欢
    • 2014-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-23
    • 2010-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多