【发布时间】:2017-08-11 23:27:25
【问题描述】:
在早期版本的木偶中,我们可以使用木偶控制器
return Marionette.AppRouter.extend({
appRoutes: {
'admin/:controller/:action(?:query)': "controllerThird",
'*notFound': "error"
},
controller: new Controller()
})
return Marionette.Controller.extend ({
controllerThird: function (controller, action, query) {
this.start(action);
}
})
但现在Marionette.Controller
警告:已弃用。不推荐使用 Controller 对象。代替 使用带有 AppRouter 的 Controller 类,您应该指定您的 普通 Javascript 对象或 Marionette 对象上的回调
我们像使用 MVC 控制器一样
function (Backbone, Marionette, controller){
"use strict";
var AppRouter = Backbone.Marionette.AppRouter.extend({
appRoutes: {
"path1" : "goto_path1",
"path2" : "goto_path2",
"path3" : "goto_path3"
}
});
return new AppRouter({controller: controller});
});
define([
'jquery',
'underscore',
'backbone',
'marionette',
'app',
'userSession'
],
function($, _, Backbone, Marionette, App, userSession) {
return {
goto_path1: function () {
//I need get current query in this point
},
});
在控制器处理程序中,我想访问操作,查询参数,如
controllerThird: function (controller, action, query)
我该怎么做?
【问题讨论】:
标签: javascript backbone.js marionette