script/require-typed-ref
空・null・undefined で初期化する ref() に型引数を指定します。
既定の重大度: warning
プリセット: none
自動修正: なし。修正内容を確認してください
適用範囲: 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": {
"script/require-typed-ref": "warn"
}
},
},
});
vp run lint
悪い
インポートした ref に型引数がなく、引数なし、null、undefined からは将来代入する値の型を推論できません。
<script setup lang="ts">
import { ref } from 'vue'
const a = ref() // Ref<undefined>
const b = ref(null) // Ref<null>
const c = ref(undefined) // Ref<undefined>
</script>
良い
型引数で string と nullable な User の ref を指定します。ref(0) には具体的な数値の初期値があり、型推論を使えます。
<script setup lang="ts">
import { ref } from 'vue'
const a = ref<string>()
const b = ref<User | null>(null)
const c = ref(0) // inferred Ref<number>
</script>
良い例は上記の設定でこのルールの検出を避ける例です。他のルールでは検出される場合があります。