主干:从视图类向路由器添加路由
Backbone: Adding routes to router from view classes
我正在尝试弄清楚是否有办法在骨干中动态添加路由。我有根据特定用户的权限动态添加的视图。我希望能够让 view 类在实例化时添加其路由,而不必定义路由器中的所有路由(我使用的是单个应用程序范围的路由器)。
我尝试使用主干路由器文档中描述的路由方法,但是当我检查路由器的"路由"对象时,我没有看到添加的路由。
我怀疑你会说我可以为每个视图创建一个新路由器......可能就是这样,但我宁愿不要。
谢谢!
我尝试使用主干路由器文档中描述的路由方法,但是当我检查路由器的"路由"对象时,我没有看到添加的路由。
路由器的路由对象只是您传递到扩展函数中的哈希。
实际路由将添加到 Backbone.history 对象中。
因此,当您使用 Router.route() 函数时,它不会修改路由器的 Routes 哈希,但它实际上会将路由添加到 Backbone.history,并且它将按预期工作。
Workspace = Backbone.Router.extend({
routes: {
"help": "help", // #help
"search/:query": "search", // #search/kiwis
"search/:query/p:page": "search" // #search/kiwis/p7
},
help: function() {
console.log("help");
},
search: function(query, page) {
console.log("search",query,page);
},
new: function() {
console.log("new");
}
});
Main = Backbone.View.extend({
tagName: 'div',
initialize: function() {
app.route('new','new');
},
render: function() {
return this;
}
});
app = new Workspace();
Backbone.history.start();
main = new Main();
app.navigate('new',{trigger:true}); //=> "new"
现场示例:http://jsfiddle.net/edwardmsmith/XsDQu/4/
相关文章:
- 堆叠有角度路由器添加控制器
- iron路由器将参数添加到字符串中,并添加一个查询
- 流星 - 添加带有熨斗的路由后无法提交用户.路由器到登录和注册表单
- Iron:路由器在更改路由器上添加事件
- Angular ui路由器向url添加哈希
- 使用路由器链接动态添加元素
- 如何在使用具有嵌套视图的 ui 路由器时添加用户控制器
- Express :如何将中间件独占添加到路由器对象中的大型路由列表中
- 主干:从视图类向路由器添加路由
- 节点 JS - 使用路由器添加更多页面(ejs 模板)
- 将路由器代码添加到组件时分析错误?(v2.0.0-beta.0)
- 在state.go(ui路由器)之后添加功能
- 用javascript中的iron路由器动态添加路由
- Angular ui路由器:添加templateUrl破坏路由
- ui路由器添加模块
- 使用Redux路由器+React路由器向应用程序添加基本URL
- 铁:路由器+流星-不能同时添加POST数据到数据库和渲染路由
- 在铁路由器中添加背景色
- 陨石路由器包安装-未捕获'错误'在mrt上添加路由器'
- 向Backbone.js路由器添加路由,包括404处理程序