我遇到的问题是我的查询参数都设置为使用replace:true,但是当我更改属性时,使用pushState而不是replaceState更新查询参数。
您可以在https://www.timbuktutravel.com/trips
中看到此行为因此,当过滤器更改时,查询参数会更新,但是使用pushState会发生这种情况,所以在您更改了过滤器几次之后。如果您再单击后退,则开始浏览先前过滤组合的历史记录
任何帮助都非常感谢!!
我的查询参数定义如下:
queryParams: {
selectedCountryNames: {
replace: true,
as: 'countries'
},
selectedExperienceNames: {
replace: true,
as: 'experiences'
},
selectedActivityNames: {
replace: true,
as: 'activities'
},
selectedWildlifeNames: {
replace: true,
as: 'wildlife'
},
selectedMonthNames: {
replace: true,
as: 'month'
},
selectedTripLengths: {
replace: true,
as: 'length'
},
selectedBudgets : {
replace: true,
as: 'budget'
}
},
答案 0 :(得分:1)
需要在路线上指定replace:true