Typescriptの勉強をしています。
Vue3でtypescriptを使用しています。
コンポーネントを呼び出してページのタイトルを記述しているのですが、
[Vue warn]: Invalid prop: type check failed for prop "event_name". Expected String | Null, got Undefined
が出てしまいます。
こちら、動き的には問題ないのですがどのように改善すればよいかアドバイスいただけますと幸いです。
■親のVueファイル
<template> <AdminEventTitle :event_name="event?.name" :event_type="event?.event_type" /> </template> <script setup lang="ts"> import AdminEventTitle from '@/Components/Molecules/AdminEventTitle.vue' import { Event } from '@/Components/Admin/Event/EventList.vue' const event = ref<Event>() const getEvent = async () => { const endpoint = `/api/v1/{省略}/` await axios.get(endpoint) .then((response: any) => { event.value = response.data }) .catch((err) => { console.log(err) }) } onMounted(async () => { // ★eventはここで取得しています。 await getEvent() } </script>
■子コンポーネント AdminEventTitle.vue
<template> <div class="text-gray-800"> <div> <h1 class="text-center text-xl font-semibold">{{event_name}}:{{event_type}}</h1> </div> <div class="text-sm mb-6 text-center"> スタート日: </div> </div> </template> <script setup lang="ts"> type Props = { event_name: string | undefined, event_type: string | undefined, } const props = defineProps<Props>() </script>
string | undefined と定義しているのですが・・・

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/01/12 07:13