Ember, измените текущие цели url и LinkTo без перезагрузки данных - PullRequest
0 голосов
/ 10 октября 2019

Как изменить URL и компоненты LinkTo без перезагрузки данных?

Рисунок приложения, в котором пользователь может изменить название своего проекта. Текущий URL содержит имя проекта, поэтому оно должно быть обновлено. Ничто не исключает URL, и ссылки должны быть изменены (без перезагрузки данных)

Рассмотрим этот основной маршрут:

this.route('routeName', { path: '/:project_name/:param2/:param3' }, function () {
  ...many sub routes
});

Метод replaceURL позволяет изменить URL:

this.router.location.replaceURL(urlWithNewProjectName)

Пример использования LinkTo (модель не указана, используются значения по умолчанию):

{{#LinkTo 'routeName'}}link{{/LinkTo}}

Например, следующие ошибки:

// this code in the router has no effect on LinkTo in templates.
const params = this.paramsFor(this.routeName);
params.project_name = "newName";

Компоненты LinkTo продолжают указывать старые URL-адреса,Как изменить значение по умолчанию для динамического сегмента для маршрута?

1 Ответ

0 голосов
/ 16 октября 2019

Вам необходимо передать динамические сегменты компоненту LinkTo в шаблоне. Когда эти реквизиты меняются, ссылка будет обновляться. Для получения дополнительной информации см. Руководства: https://guides.emberjs.com/release/templates/links/#toc_example-for-multiple-segments

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