繁体   English   中英

骨干非默认根URL

[英]Backbone non-default root url

我正在尝试将Backbone集成到PHP CMS

我的Backbone应用程序的根URL是:

http://localhost/administrator/index.php?option=com_test&controller=product.list

我已经这样设置了路由器:

var AppRouter = Backbone.Router.extend({
    routes: {
        '': 'test',
    }
});

var initialize = function () {
    var router = new AppRouter;

    router.on('test', function () {
        console.log('match');
    });

    Backbone.history.start({
        pushState: true,
        root: '/administrator/index.php?option=com_test&controller=product.list'
    });

    router.navigate('/', {trigger: true});
};

正确调用了navigate功能,但路由从未匹配。 我试图在root添加尾随反斜杠,但是它没有任何改变。

问题是您应该像这样向Router添加test方法:

var AppRouter = Backbone.Router.extend({
  routes: {
    '': 'test',
  },
  test: function(){
    console.log('test route');
  }
});

或收听route:test事件:

router.on('route:test', function () {
    console.log('match');
});

因为Backbone.Router与前缀route:匹配时会触发路由名称route:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM