vue/require-typed-ref スタイル
何をするか
ref および shallowRef 関数に対して明示的な型指定を必須とする。
なぜ悪いのか
TypeScript を使用している場合、noImplicitAny を使うことで any の使用を簡単に防ぐことができる。しかし、Vue の ref() 関数を使うとこのルールを簡単に回避できてしまう。ジェネリックパラメータや初期値なしで ref() 関数を呼び出すと、その ref は Ref<any> 型となる。
例
このルールに対して不正なコードの例:
typescript
const count = ref();
const name = shallowRef();このルールに対して正しいコードの例:
typescript
const count = ref<number>();
const a = ref(0);利用方法
設定ファイルまたは CLI でこのルールを有効化するには、次のようにします:
json
{
"plugins": ["vue"],
"rules": {
"vue/require-typed-ref": "error"
}
}bash
oxlint --deny vue/require-typed-ref --vue-plugin