@H_502_1@我试图遵循
Organizing your application using Modules (require.js我正在努力了解路由的工作原理.
我不能让简单的绑定工作索引:
// Filename: router.js define([ 'jquery','underscore','backbone','views/projects/list' ],function ($,_,Backbone,ProjectListView) { var AppRouter = Backbone.Router.extend({ routes: { // Define some URL routes '': 'index' } }); var initialize = function () { var app_router = new AppRouter(); app_router.on('index',function () { alert("index"); // this never gets called }); Backbone.history.start(); return app_router; }; return { initialize: initialize }; });
加载页面时没有任何反应.但这有效:
// Filename: router.js define([ 'jquery',ProjectListView) { var AppRouter = Backbone.Router.extend({ routes: { // Define some URL routes '': 'index' },index: function() { alert("works"); } }); var initialize = function () { var app_router = new AppRouter; Backbone.history.start(); return app_router; }; return { initialize: initialize }; });
我错过了什么吗?
解决方法
好的,这就是它的完成方式:
var initialize = function () { var app_router = new AppRouter(); app_router.on("route:index",function () { alert("hello world"); }); Backbone.history.start(); return app_router; };