Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EditorHome.vueにあるdialogをquasarのuseDialogPluginComponentで開くようにする #1551

Open
Hiroshiba opened this issue Sep 15, 2023 · 1 comment
Labels
初心者歓迎タスク 初心者にも優しい簡単めなタスク 機能向上

Comments

@Hiroshiba
Copy link
Member

Hiroshiba commented Sep 15, 2023

内容

EditorHomeではアプリケーション全体で開かれるダイアログをあらかじめコンポーネントとして配置しています。

<help-dialog v-model="isHelpDialogOpenComputed" />
<setting-dialog v-model="isSettingDialogOpenComputed" />
<hotkey-setting-dialog v-model="isHotkeySettingDialogOpenComputed" />
<header-bar-custom-dialog v-model="isToolbarSettingDialogOpenComputed" />
<character-order-dialog
v-if="orderedAllCharacterInfos.length > 0"
v-model="isCharacterOrderDialogOpenComputed"
:character-infos="orderedAllCharacterInfos"
/>
<default-style-list-dialog
v-if="orderedAllCharacterInfos.length > 0"
v-model="isDefaultStyleSelectDialogOpenComputed"
:character-infos="orderedAllCharacterInfos"
/>
<dictionary-manage-dialog v-model="isDictionaryManageDialogOpenComputed" />
<engine-manage-dialog v-model="isEngineManageDialogOpenComputed" />
<accept-retrieve-telemetry-dialog
v-model="isAcceptRetrieveTelemetryDialogOpenComputed"
/>
<accept-terms-dialog v-model="isAcceptTermsDialogOpenComputed" />

これの影響でダイアログの開閉状態をアプリケーション全体で管理する形になり、かつダイアログのオープンやクローズに反応して何かの関数を実行するためにwatchを使う必要があり、少し困難になっています。

quasarのuseDialogPluginComponentを使えば開閉状態のコントロールや開閉状態にフックした処理の実行などが素直に書けるはずです。
配置してあるダイアログをこれを使ってなるべく開閉するようになればこの課題は解決です。

Pros 良くなる点

管理がしやすくなりそう。

Cons 悪くなる点

実現方法

とりあえず簡単そうなダイアログを1つ置き換えられるかどうかをチェックするのが良さそうに思います。
すでにuseDialogPluginComponentを使っている箇所がいくつかあると思うので参考になるかもです。

その他

初心者歓迎タスクラベルがついていますがプログラミングの難度的には難しいと思います。
プログラミングに慣れている方がVuejsになれるのに適しているタスクだと思います。

@jdkfx
Copy link
Contributor

jdkfx commented Dec 15, 2024

多分今はsrc/views/EditorHome.vueじゃなくて、src/components/Dialog/AllDialog.vueかもしれない

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
初心者歓迎タスク 初心者にも優しい簡単めなタスク 機能向上
Projects
None yet
Development

No branches or pull requests

2 participants