EmberJS:无法找到属性“操作”
我使用Emebr JS的入门工具包,并向应用程序模板添加了一个带{{action hello}}的简单锚标签。
我预先编译带有句柄预编译器的模板。 当我试图运行它时,它会抛出一个错误。
未捕获错误:无法找到属性“操作”
以前我曾经用ember-1.0.pre.js做同样的事情,工作正常。 但是当我包含新的ember库( ember-1.0.0-pre.2.js )时,它会抛出这个错误。
在这两种情况下,我使用的是handlebars-1.0.rc.1.min.js 。
任何人都可以请帮我解决这个问题。 下面列出了我使用的手柄和库的详细信息。
用句柄预编译器编译的模板。 application.handlebars
<h1>Hello from Ember.js</h1>
<a {{action hello}}>Say Hello!</a>
我的HTML页面:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="js/libs/jquery-1.7.2.min.js"></script>')</script>
<script src="js/libs/handlebars-1.0.0.beta.6.js"></script>
<script src="js/libs/ember-1.0.0-pre.2.min.js"></script>
<script src="handlebars/compiled/views.handlebars.js"></script>
<script src="js/app.js"></script>
views.handlebars.js包含已编译的车把。
App.js:
var App = Ember.Application.create();
App.ApplicationController = Ember.Controller.extend();
App.ApplicationView = Ember.View.extend({
templateName: 'application'
});
App.Router = Ember.Router.extend({
root: Ember.Route.extend({
index: Ember.Route.extend({
route: '/'
}),
hello: function() {
console.log("Hello and Welcome");
}
})
})
App.initialize();
当预编译句柄视图的时候,你需要使用Ember.Handlebars,而不是Handlebars。 我怀疑这可能是问题所在。
更多讨论:Emberjs把手预编译
感谢您的链接,但我开始使用ember-precompile而不是handlebars预编译。 你可以在https://github.com/gabrielgrant/node-ember-precompile找到ember-precompile
此模块使用较旧的handlebars和ember库,在运行此库之前,必须将这些库升级到最新版本,然后运行它。 可以在“index.js”中修改库的路径。 添加最新的库和修改“index.js”已为我工作。
链接地址: http://www.djcxy.com/p/73455.html