私は Emebr JS のスターター キットを使用しており、{{action hello}} を含む単純なアンカー タグをアプリケーション テンプレートに追加しました。
テンプレートを handlebars プリコンパイラでプリコンパイルしています。これを実行しようとすると、エラーがスローされます。
UnCaught エラー: プロパティ 'action' が見つかりませんでした
以前はember-1.0.pre.jsで同じことを行っていましたが、これは正常に機能していました。しかし、ember の新しいライブラリ ( ember-1.0.0-pre.2.js ) を含めると、このエラーが発生します。
どちらの場合も、handlebars-1.0.rc.1.min.jsを使用しています。
誰でも問題を解決するのを手伝ってくれませんか。私が使用しているハンドルバーとライブラリの詳細情報を以下に示します。
ハンドルバーのプリコンパイラでコンパイルされたテンプレート。アプリケーション.ハンドルバー
<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();