canjs can.route和can.route.delegate,当属性具有特定值时监听?

时间:2014-01-19 22:25:45

标签: routes canjs canjs-routing

我使用canJs与插件can.Map.delegate,我想这样,但它不起作用," ok"没有在控制台中显示。

你能帮帮我吗?

    $(function() {

      var Routing = can.Control({
        '{can.route} id=3': function(data) {
          console.log("ok");
         }
      });

      var routeDelegate = can.route(":id");
      can.route.ready();
      routeDelegate.delegate("id", "set");

      new Routing(document);

      can.route.attr("id", 3);

    });

感谢

1 个答案:

答案 0 :(得分:1)

如何使用can.Control.route

http://canjs.com/docs/can.Control.route.html

$(function() {

    var Routing = can.Control({
        ':id route': function(data) {
            console.log(data); // logs: Object { id="3"}
        }
    });

    new Routing(document);

    can.route.ready();

    can.route.attr("id", 3);

});

这为你做了所有简单的映射,然后在数据对象中有了params。

这里有两种类型的路线,有一个不错的2个寻呼机:

http://bitovi.com/blog/2012/05/hashchange-routing-can-route-1.html


注意:我稍后移动了can.route.ready();,因此浏览器刷新会触发控件