iT邦幫忙

2023 iThome 鐵人賽

DAY 24
0

Vue.js 中非常重要的一個功能——props!它是一種讓不同元件之間傳遞資料的方法。

讓我們用生活中的例子來理解「props」。可以把它想像成是你和朋友之間傳遞訊息的方式。當你想告訴朋友一個重要的消息時,你會將這個消息傳遞給他們,然後他們就能知道發生了什麼事情。

在 Vue.js 中,props 的作用類似於這種訊息傳遞的概念。它允許在不同的 Vue 元件之間共享資料。

範例如下:
Html:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Vue Prop Example</title>
  <script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script>
</head>
<body>
  <div id="app">
    <child-component :message="parentMessage"></child-component>
  </div>
  <script src="main.js"></script>
</body>
</html>

Js:

Vue.component('child-component', {
  props: ['message'],
  template: `
    <div>
      <h2>子元件</h2>
      <p>{{ message }}</p>
    </div>
  `
});

new Vue({
  el: '#app',
  data() {
    return {
      parentMessage: '這是父元件的訊息!'
    };
  }
});

呈現畫面:
https://ithelp.ithome.com.tw/upload/images/20231008/20163036iu8PJ04uEv.png

在這個例子中,一開始在 HTML 文件中引入了 Vue.js 庫,然後創建了一個根元素 <div id="app">,同時在這裡使用了一個叫做 child-component 的子元件。

在 JavaScript 文件中,我們先用 Vue.component 定義了一個名為 child-component 的子元件,同時定義了一個名為 message 的 props。在模板中使用了這個 props 來顯示消息。

接下來,創建了一個新的 Vue 實例,並將其掛載到了根元素 #app 上,同時定義了一個名為 parentMessage 的數據屬性。

這樣打開 HTML 文件時,會看到在子元件中成功顯示了父元件傳遞的消息!


上一篇
Day23 vue 單一檔案元件
下一篇
Day25 $emit
系列文
學習網頁前端基本的技術,包含如何使用HTML標籤跟CSS做出基本的網頁版型,了解bootstrap template如何建置網頁架構。30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言