我想单击“导出”按钮并转换到“导出”查询参数设置为 true 的路线“家”。我不希望这个查询参数刷新我的路线。所以这是我的路线的样子:
export default Route.extend(ApplicationRouteMixin, {
queryParams: {
export: {
refreshModel: false
}
}
})
在我的控制器中,我试图观察查询参数并调用一个为我导出的函数,然后我想将查询参数设置回 null。这是我的控制器:
import Ember from 'ember'
const {Controller, inject} = Ember
export default Controller.extend({
// == Dependencies ==========================================================
session: inject.service(),
// == Keyword Properties ====================================================
queryParams: ['export'],
export: null,
queryParamsObserver: function () {
if (this.get('export')) {
this.exportFile()
this.set('export', null)
}
}.observes('export'),
// == Functions =============================================================
exportFile () {
},
// == Actions ===============================================================
actions: {
}
})
但我的问题是,当我将查询参数设置为 null 时,它不会在 url 上更改。我想知道我在这里缺少什么不会导致这种行为。另外,我想知道使用观察查询参数是否是触发某些操作的最佳解决方案。