#vue https://v3.vuejs.org/guide/composition-api-introduction.html#basics-of-composition-api ## TypeScript ```ts import { defineComponent, } from "@vue/composition-api"; export default defineComponent({ // <hello-world msg="おはござ" /> のように指定できる属性 // 以前の書き方だとpropsに相当する props: { msg: { type: String, default: "おはござ" }, // Array型の場合は↓のように書く。各要素はHuga型の場合 huga: { type: Array as () => Huga[] }, // primitive型でもArrayでもない場合は↓のように書く // required: true を指定すると必須になる hoge: { type: Object as () => Hoge, required: true }, }, setup(props) { // propsに上で定義したObjectが入ってくるので、必要な場合だけ使う // 中略 } ``` ```vue <template> {{ msg }} </template> ```