VueCli學習筆記 Day-02 - 1Vue專案的組成從組件看組件之間的互動

一、App.vue父組件

image
App.vue中可以看到檔案內容結構是由<script setup></script><template></template><style></style>組成

  1. script setup
    這邊引入了src/components中的HelloWorld.vue
    ​​​​<script setup> ​​​​ import { RouterLink, RouterView } from 'vue-router' ​​​​ import HelloWorld from './components/HelloWorld.vue' ​​​​</script>
  2. 以HelloWorld來看
    HelloWorld被使用在<div class="wrapper">中的區塊。
    image

二、HelloWorld.vue子組件

​​​​`script setup></script>`中使用了以下語法:
<script setup> //defineProps()的作用是告訴子組件要接收哪些數據,且數據來自父組件 //所以父組件import HelloWorld.vue這個子組件時要提供一個字串型的msg defineProps({ msg: { //指定msg為組件的屬性 type: String, //定義msg的屬性為String required: true //msg屬性是必須提供的 } }) </script>
<template> <div class="greetings"> <h1 class="green">{{ msg }}</h1> <h3> You’ve successfully created a project with <a href="https://vitejs.dev/" target="_blank" rel="noopener">Vite</a> + <a href="https://vuejs.org/" target="_blank" rel="noopener">Vue 3</a>. </h3> </div> </template>

image