"エクスポート"ボタンをクリックし、 "エクスポート"クエリパラメータをtrueに設定して "ホーム"ルートに移動します。私はこのクエリのparamが私のルートを更新しないようにしたい。だからここに私のルートがどのように見えるかされていますURLにクエリパラメータが変更されていません
私のコントローラでexport default Route.extend(ApplicationRouteMixin, {
queryParams: {
export: {
refreshModel: false
}
}
})
、私は、クエリのparamを観察し、私のために輸出を行う関数を呼び出すしようとしている、その後、私は、クエリのparamを設定したいですヌルに戻るここに私のコントローラである:
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にクエリのparamを設定すると、それはURLに変更されないことです。私は、その行為を引き起こしていない、私がここで何が欠けているのだろうと思っています。 さらに、クエリのparamを監視することが、いくつかのアクションを引き起こす最適な解決策であるかどうかは疑問です。
基本的には、 'export'を常にnullにして、エクスポートにトリガーするためにリンクを使用しますか? – Lux
よくないとは限りません。最初にそのルートに移動してファイルをダウンロードできるときにnullに設定します。ダウンロード直後にnullに設定します。このエクスポートボタンは、アプリケーションレベルにあり、すべてのルートからアクセスできます。ユーザーは、エクスポートボタンをクリックすることで、エクスポートクエリのparamを再度trueに設定することができます。 – user5471528