Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 与ember预编译、ember.js和handlebar.js版本兼容的问题_Javascript_Templates_Ember.js_Handlebars.js - Fatal编程技术网

Javascript 与ember预编译、ember.js和handlebar.js版本兼容的问题

Javascript 与ember预编译、ember.js和handlebar.js版本兼容的问题,javascript,templates,ember.js,handlebars.js,Javascript,Templates,Ember.js,Handlebars.js,我无法读取html中的预编译模板。这是因为ember precompile与ember.js和handlebar.js的版本兼容问题 我的代码是这样的: 包括以下文件 <script src="../js/libs/jquery-1.10.2.js"></script> <script src="../js/libs/handlebars-v1.3.0.js"></script> <script src="../js/libs/ember-1

我无法读取html中的预编译模板。这是因为ember precompile与ember.js和handlebar.js的版本兼容问题

我的代码是这样的:

包括以下文件

<script src="../js/libs/jquery-1.10.2.js"></script>
<script src="../js/libs/handlebars-v1.3.0.js"></script>
<script src="../js/libs/ember-1.2.0.js"></script>
<script src="js/precompile.js"></script>
<script src="js/precompile.app.js"></script>
在控制台中,车把编译器的修订版为4

Handlebars.COMPILER_REVISION  -- 4
有了上面的版本,我可以阅读使用把手作为模板

Handlebars.templates['test_temp'];
然后我从下面的包中安装了ember预编译-

在命令提示符中安装为:

npm install handlebars@1.3.0 -g
npm install ember-precompile
现在我无法使用Em.TEMPLATE[“TEMPLATE_name”]读取已编译的模板

我已经包含并安装的ember、Handlebar和ember预编译版本存在兼容问题


每个版本的哪个版本匹配并可以读取编译后的模板。

我总是遇到
ember-precompile
未更新的问题。幸运的是,您可以自己更新库。只需转到安装了
ember-precompile
的文件夹(对我来说,它全局位于
/usr/local/share/npm/lib/node_-modules/ember-precompile
),并替换
供应商
文件夹中的库。最新版本使用了Ember 1.2.0和Handlebar 1.1.2。只需用您需要的版本替换它们。(你可能需要保留相同的名字,但我真的记不起来了。)


另外,为什么要在页面中包含预编译Javascript文件?这违背了预编译的全部目的。

感谢您的回复。我替换了供应商文件夹中使用的余烬和把手版本。重新编译并测试,但我得到了错误-->未捕获类型错误:无法读取未定义的属性“push”,我得到了相同的错误;你解决了这个问题吗?诚然,我是在没有明确预编译(也称为基本的“它呈现”单元测试)的情况下遇到这种情况的,GJK提供的答案是正确的……添加推送错误的堆栈跟踪……我不确定它是否来自模板……您可以在这里检查是否使用了正确的版本
npm install ember-precompile