javascript - canjs中的路由

标签 javascript canjs canjs-routing

现在我正在深入研究canjs,它看起来像一个很棒的mvc框架。我的路由器有问题。我正在使用 wamp 在本地主机中进行测试。所以问题如下:当我输入 localhost 时,浏览器中的初始 url 是“localhost”,它与处理空 url 的路由器中的第一个情况匹配。问题是我正在做一个 window.location.hast 来重定向用户,但是在我这样做之后它不会被路由,所以这是我需要帮助的部分。我的路由器代码如下:

$(function() {
'use strict';
var Routing = can.Control({
    defaults: {}
}, {
    'init': function() {
        console.log('router init');
    },
    //default router
    'route' : function(){
        console.log('default route');
        window.location.hash= "#!dashboard/london/";//doesnt works like this
        //can.route.attr('location','london');//like this it works!!!
    },
    //route i cant match!
    'dashboard/:location/ route' : function(data){
        console.log(data.location);
    }
});

can.route.ready(false);
new Routing($('body'));
can.route.ready(true);

});

最佳答案

created a Fiddle使用最新版本(只需调用 can.route.ready() 即可开始路由)运行您的代码,我得到

router init
default route
london

这应该是您所期望的。

关于javascript - canjs中的路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19595907/

相关文章:

javascript - 如何更改 CanJS 中的路由 url

javascript - 在 CanJS 中使用 can.Control.route 定义两个独立的路由器

javascript - 按钮被多次调用

javascript - HelloJS/me API 未返回完整结果

javascript - CanJS 模型 : attr function and nested data

javascript - 如何在补丁请求后更新行为主体?

javascript-framework - CanJS 多页面应用程序

Javascript 框架 canJs control.route

javascript - 单个 ng-repeat 内的多个 radio 组不起作用

javascript - Javascript 如何处理 BODMAS?