无法使用带有预编译模板的最新版本

时间:2013-06-16 08:54:01

标签: javascript ember.js gruntjs grunt-ember-templates

我刚安装了最新的ember入门套件。它有:

  • Ember.VERSION:1.0.0-rc.5
  • Handlebars.VERSION:1.0.0-rc.4
  • jQuery.VERSION:1.9.1

我正在使用grunt-contrib-handlebars@0.5.9预编译我的模板(这是最新版本)。我不知道该软件包中包含哪个版本的把手,但是在启动应用程序时出现以下错误:

Uncaught Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version (>= 1.0.0-rc.4) or downgrade your runtime to an older version (== 1.0.0-rc.3).

我甚至试过加载另一个把手的运行时(版本1.0.0-rc.3),但是ember对它并不满意:

Uncaught Error: assertion failed: Ember Handlebars requires Handlebars version 1.0.0-rc.4, COMPILER_REVISION expected: 3, got: 2 – Please note: Builds of master may have other COMPILER_REVISION values.

因此ember需要1.0.0-rc.4,但此版本没有可用的预编译器。捉住22?

我应该删除预编译的模板吗?每次升级余烬都有这个休息时间会非常烦人......

2 个答案:

答案 0 :(得分:2)

您可以使用emberTemplates grunt任务,从这里开始:https://github.com/dgeb/grunt-ember-templates,因为此版本具有更新的依赖关系,并且是由ember核心团队的成员维护的。

我猜您已经知道,要使用grunt-ember-templates,您可以在package.json

中定义依赖关系
  ...
  "devDependencies": {
    ...
    "grunt-ember-templates": "0.4.7"
  }
  ...

并运行npm install

希望有所帮助

答案 1 :(得分:0)

我遇到了同样的问题 - 同样的错误信息。在我的情况下,问题是我使用的是一个包含一些由先前版本的grunt-ember-handlebars编译的模板的ember库所以我得到了当前版本的grunt-ember-handlebars编译的那个库的新版本这就解决了这个问题。