我试图构建一个非常简单的组件,它只呈现一个字符串 prop ,并在挂载时记录字符串 prop 。
<template>
<div>
<div>Prop: {{ typedProps.msgProp }}</div>
</div>
</template>
<script lang="ts">
import { defineProps, onMounted } from "vue";
interface IDemoProps {
msgProp?: string;
}
export default {
setup(props: IDemoProps) {
const typedProps = defineProps({
msgProp: {
type: String,
required: true
}
});
onMounted(() => {
console.log(typedProps)
});
return { typedProps };
}
};
</script>
当前typedProps
在模板和设置方法中均为空?如何配置组件以正确访问msgProp
?我还想给prop指定一个类型string
。
谢谢你
1条答案
按热度按时间xkftehaa1#
一种方法是使用
setup script
。这是推荐的SFC方法。1.你不必从模板中引用 prop 。
1.你不必返回props、includes、computed等。从脚本
https://vuejs.org/api/sfc-script-setup.html#typescript-only-features