1

我正在使用https://github.com/thinkadoo/Projects应用程序的帮助。在这个的帮助下,我构建了一个类似的应用程序。我的应用程序使用的是 d3 图表,而不是这个使用的图表。我的应用程序将路由器初始化为

  var patientStatus = new PatientStatus('#application', {'credentials':Credentials,'secret':Secret});

现在如果我想实现路由器那么应该做哪些改变?这是我的 JSFiddle 与这两种实现。第一个正在工作。但是我初始化路由器的后面部分似乎不起作用。 http://jsfiddle.net/sweety1112/YMAjm/

有人能帮我吗。

4

1 回答 1

3

这是一个更新的 Fiddle,它显示了路由的工作原理:

  var Router = can.Control({
    defaults: {}
  }, {
    init: function() {
      // this.element.html(can.view('#index', {}));
    },

    ':type/:id route': function(data) {
        console.log('Type:', data.type);
        console.log('Id:', data.id);
    }
  });

  can.route.ready(false);
  new Router('#content');
  can.route.ready(true);

基本上,您所做的是初始化您的命名占位符并告诉控制器这应该由route处理器处理。现在,如果您转到一个 URL,例如#!test/23处理程序的数据将包含一个typeid属性。

于 2013-04-02T13:56:24.033 回答