オプション: その他 
name 
コンポーネントの表示名を明示的に宣言します。
- 型 ts- interface ComponentOptions { name?: string }
- 詳細 - コンポーネントの名称は以下のように使用されます: - コンポーネント自身のテンプレートで再帰的な自己参照
- Vue DevTools のコンポーネントインスペクションツリーでの表示
- 警告のコンポーネントトレースでの表示
 - 単一ファイルコンポーネントを使用する場合、コンポーネントはすでにファイル名から自身の名前を推測しています。例えば、 - MyComponent.vueという名前のファイルは、推測された表示名 "MyComponent" を持つことになります。- また、 - app.componentでコンポーネントをグローバル登録すると、グローバル ID が名前として自動的に設定されるケースもあります。- nameオプションは、推測された名前を上書きしたり、名前が推測できないとき(例: ビルドツールを使用していないときや、インラインの非 SFC コンポーネント)に明示的に名前を指定したりできます。- nameが明示的に必要となるケースがひとつあります:- <KeepAlive>のキャッシュ可能なコンポーネントに対して、- include / excludeプロパティでマッチングする場合です。- TIP - バージョン 3.2.34 以降、 - <script setup>を使用した単一ファイルコンポーネントは、ファイル名から- nameオプションを自動的に推測します。これにより、- <KeepAlive>と共に使用した場合でも、手動で名前を宣言する必要がなくなりました。
inheritAttrs 
デフォルトのコンポーネント属性のフォールスルー動作を有効にするかどうかを制御します。
- 型 ts- interface ComponentOptions { inheritAttrs?: boolean // default: true }
- 詳細 - デフォルトでは、prop として認識されない親スコープ属性のバインディングは「フォールスルー」されます。つまり、単一ルートコンポーネントの場合、これらのバインディングは通常の HTML 属性として子コンポーネントのルート要素に適用されます。ターゲット要素や他のコンポーネントをラップするコンポーネントを作成する場合、これは必ずしも望ましい動作とは限りません。 - inheritAttrsを- falseに設定することで、このデフォルトの挙動を無効にできます。属性は- $attrsインスタンスプロパティを介して利用でき、- v-bindを使用して非ルート要素に明示的にバインドできます。
- 例 - <script setup>を使用するコンポーネントでこのオプションを宣言する場合、別の- <script>ブロックが必要です:vue- <script> export default { inheritAttrs: false } </script> <script setup> defineProps(['label', 'value']) defineEmits(['input']) </script> <template> <label> {{ label }} <input v-bind="$attrs" v-bind:value="value" v-on:input="$emit('input', $event.target.value)" /> </label> </template>
- 参照: フォールスルー属性 
components 
コンポーネントインスタンスで利用できるようにするコンポーネントを登録するオブジェクト。
- 型 ts- interface ComponentOptions { components?: { [key: string]: Component } }
- 例 js- import Foo from './Foo.vue' import Bar from './Bar.vue' export default { components: { // ショートハンド Foo, // 別名で登録 RenamedBar: Bar } }
- 参照: コンポーネントの登録 
directives 
コンポーネントインスタンスで利用できるようにするディレクティブを登録するオブジェクト。
- 型 ts- interface ComponentOptions { directives?: { [key: string]: Directive } }
- 例 js- export default { directives: { // テンプレート内で v-focus を有効化する focus: { mounted(el) { el.focus() } } } }template- <input v-focus>- コンポーネントインスタンスで使用可能なディレクティブのハッシュ。 
- 参照: カスタムディレクティブ