CanJS can.route.ready() версия 2.1- '#!' меняется на '#!&' при нажатии на ссылку

У меня есть приложение, которое использует can.route для захвата #change, когда пользователь нажимает на ссылку. href для ссылки имеет шаблон "#!". Как только изменение фиксируется утилитой can route, я вижу, что хеш в браузере меняется на #!&.

Это вызывает дополнительную запись в стеке истории браузера. Кто-нибудь сталкивался с подобной проблемой?

Ценю твою помощь.

1 ответ

Не удалось предоставить исправление, так как нет кода, чтобы увидеть, как настроен маршрут.
Похоже, вы добавляете в маршрут только дополнительные параметры. Для подтверждения, пожалуйста, выполните can.route.attr(); в консоли разработчика браузера.

Если все настроено правильно, вы должны получить что-то вроде этого для URL http://localhost/example

---> can.route.attr(); Object {route: "currentRoutePage"}

Выглядит в вашем случае, URL-адрес является http://localhost/example, и поэтому в объекте отсутствует значение route

---> can.route.attr(); Object {view: "currentRoutePage", route: ""}

Если это не очень помогает, поделитесь URL-адресом, который вы видите в браузере, и настройкой маршрута для него.

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