Фреймворк Javascript

Я хотел бы использовать это Туто, но у меня не работает

    $(function() {

    Router = can.Control({

      "завершенный маршрут": function(){
        console.log("хэш #! завершен")
      },
      "активный маршрут": function(){
        console.log("хеш # # active")
      },
      "project/create": function(){
        console.log("хэш #!project/create")
      },
      "route": function(){
        console.log("empty hash")
      }
    });

    // убедитесь, что инициализировали Control
    new Router(document);

    });

я использую window.location.hash = "!#completed" или же <a href="#!active">Show Active</a>сообщение не отображается в консоли.

Я использую canjs 2.0.4 с JQuery

Спасибо за помощь

1 ответ

Решение

Вы должны вызвать can.route.ready() для инициализации маршрутизации:

Router = can.Control({
  "completed route" : function(){
    console.log("the hash is #!completed")
  },
  "active route" : function(){
    console.log("the hash is #!active")
  },
  "route" : function(){
    console.log("empty hash")
  }
});

// make sure to initialize the Control
new Router(document);

can.route.ready();

Вот скрипка: http://jsfiddle.net/DeGR5/

Другие вопросы по тегам