Student.vue
<template>
<div>
<h2>{{ msg }}</h2>
<h2>学生姓名:{{ name }}</h2>
<h2>学生性别:{{ sex }}</h2>
<h2>学生年龄:{{ age + 1 }}</h2>
<button @click="updateAge">尝试修改收到的年龄</button>
</div>
</template>
<script>
export default {
name: "MyStudent",
data() {
return {
msg: "我是一个广职院的学生",
myAge: this.age,
myName: this.name,
mySex: this.sex,
};
},
methods: {
updateAge() {
this.age = 22;
},
},
props: {
name: {
type: String,
required: true,
},
age: {
type: Number,
default: 99,
},
sex: {
type: String,
required: true,
},
},
};
</script>
<style>
</style>
App.vue
<template>
<div>
<!-- 使用student组件 -->
<!-- 这里传入三个值到Student组件里 -->
<!-- :age会在传过去的组件里按照表达式运算 -->
<student name="张三" sex="李四" :age="18" />
</div>
</template>
<script>
import Student from "./components/Student.vue";
export default {
name: "App",
components: {
Student,
},
};
</script>
<style>
</style>
main.js
import { createApp } from 'vue'
import App from './App.vue'
createApp(App).mount('#app');