モジュールを使用してアプリケーションを整理する方法を開始しました(require.jsチュートリアルですが、最初のイベントハンドラーをビューに追加した後、問題が発生しました:
// Filename: views/project/list
define([
'jquery',
'underscore',
'backbone',
'handlebars',
'collections/projects',
'text!templates/projects/list.js'
], function ($, _, Backbone, Handlebars, ProjectsCollection, projectListTemplate) {
var ProjectListView = Backbone.View.extend({
el: $('#container'),
events: {
"click .open-proj": "openProject",
},
initialize: function () {
...
},
render: function () {
...
},
openProject: function(e) {
// HERE I WANT TO TRIGGER ROUTING VIA router.navigate
alert("opened");
}
});
// Our module now returns our view
return ProjectListView;
});
openProject
コールバックでルーティングをトリガーしたいのですが、循環依存が発生するため、app.jsに依存関係を導入できません(ルーターはビューに依存します)。これをどのように処理すればよいですか?