Как обновить страницу в магистральном приложении - PullRequest
27 голосов
/ 18 января 2012

Я использую магистраль для создания своего веб-приложения.

В настоящее время я сталкиваюсь с проблемой, из-за которой, если я нахожусь на домашней странице, я не могу обновить ту же страницу, просто снова нажав кнопку «Домой».

Я считаю, что это ограничение, предоставляемое магистралью (не перезагружает страницу, если вызывается тот же URL-адрес)

enter image description here

Есть ли способ обойти это? Чтобы я мог инициировать перезагрузку страницы, когда я снова нажимаю кнопку «Домой», то есть снова вызываю тот же URL?

Ответы [ 13 ]

0 голосов
/ 25 июня 2013

Вы часто можете изменить свой маршрут, добавив в него восклицательный знак, так что вы можете добавить случайную строку в конец href, чтобы сделать ее уникальной, но при этом соответствовать «домашнему» маршруту. (Примечание: сделайте этот маршрут последним.)

На маршрутах :

routes: {
    "*str": "home"
}

В поле зрения :

render: function() {
    var data = {href: +(new Date())};
    _.extend(data, this.model.attributes);
    this.$el.html(this.template(data));
    return this;
}

В шаблоне (руль показан здесь):

<a href="{{href}}">Home Link</a>
0 голосов
/ 18 января 2012

Разница между http://localhost.com/ и http://localhost.com/#!/ заключается в том, что вторая является ссылкой на привязку, она не загружает страницу, она только ищет привязку на текущей странице и прокручивает до это если найден. Вам нужно, чтобы ваша ссылка выглядела как первая, без символа "#" рядом с концом.

0 голосов
/ 18 января 2012

Это не до магистрали. То же самое отлично работает в Chrome (браузеры webkit), но не в Firefox. Это поведение браузера

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...