ember.js Ember,更改当前url和LinkTo目标而不重新加载数据

c9qzyr3d  于 2022-11-05  发布在  其他
关注(0)|答案(1)|浏览(172)

如何在不重新加载数据的情况下更改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为目标。如何更改路由的动态段默认值?

fxnxkyjh

fxnxkyjh1#

您需要将动态段传递给模板中的LinkTo组件。当这些属性更改时,链接将更新。请参阅以下指南以了解更多信息:https://guides.emberjs.com/release/templates/links/#toc_example-for-multiple-segments

相关问题