面试题答案
一键面试子组件(按钮组件 Button.vue
)
<template>
<button>{{ buttonText }}</button>
</template>
<script setup>
defineProps({
buttonText: {
type: String,
required: true
}
});
</script>
<style scoped>
/* 可添加按钮样式 */
</style>
父组件(调用按钮组件的组件,假设为 Parent.vue
)
<template>
<div>
<Button :buttonText="textForScene1" />
<Button :buttonText="textForScene2" />
</div>
</template>
<script setup>
import Button from './Button.vue';
const textForScene1 = '场景1按钮文本';
const textForScene2 = '场景2按钮文本';
</script>
<style scoped>
/* 可添加父组件样式 */
</style>
通过在子组件中定义 props
接收父组件传递的按钮文本,父组件根据不同业务场景传递不同的文本值,从而实现通用按钮组件在不同业务场景下显示不同按钮文本的功能。