我开始关注使用模块组织您的应用程序(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 引入依赖,因为它会导致循环依赖(路由器依赖于视图)。我该如何处理?