ecosystem/pinia-prefer-store-to-refs
Pinia store の分割代入に storeToRefs() を使います。
既定の重大度: warning
プリセット: ecosystem
自動修正: なし。修正内容を確認してください
適用範囲: Vue SFC の JS / TS script。Options API または script setup の対象は例を参照してください。
オプション: ルール固有のオプションはありません。重大度とプリセットは設定できます。
設定(Vite+)
import { defineConfig } from "@vizejs/vite-plugin/vite-plus";
export default defineConfig({
lint: {
vize: {
"preset": "incremental",
"rules": {
"ecosystem/pinia-prefer-store-to-refs": "warn"
}
},
},
});
vp run lint
悪い
store から name を直接分割代入し、リアクティブな store の読み取りから値を切り離しています。
<script setup lang="ts">
const { name } = useUserStore();
</script>
良い
store は保持し、storeToRefs で name のリアクティブな参照を取り出します。
<script setup lang="ts">
const store = useUserStore();
const { name } = storeToRefs(store);
</script>
良い例は上記の設定でこのルールの検出を避ける例です。他のルールでは検出される場合があります。