選單
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

Vue 教程

Vue 首頁 Vue Intro Vue Directives Vue v-bind Vue v-if Vue v-show Vue v-for Vue Events Vue v-on Vue Methods Vue Event Modifiers Vue Forms Vue v-model Vue CSS Binding Vue Computed Properties Vue Watchers Vue Templates

Scaling Up

Vue:為何、如何以及設定 Vue 第一個 SFC 頁面 Vue 元件 Vue props Vue v-for 元件 Vue $emit() Vue 透傳屬性 Vue 作用域樣式 Vue 本地元件 Vue 插槽 Vue v-slot Vue 作用域插槽 Vue 動態元件 Vue Teleport Vue HTTP 請求 Vue 模板引用 Vue 生命週期鉤子 Vue Provide/Inject Vue 路由 Vue 表單輸入 Vue 動畫 Vue v-for 動畫 Vue 構建 Vue Composition API

Vue Reference

Vue Built-in Attributes Vue Built-in Components Vue Built-in Elements Vue Component Instance Vue Directives Vue Instance Options Vue Lifecycle Hooks

Vue 示例

Vue Examples Vue Exercises Vue Quiz Vue Server Vue Certificate

Vue 'props' 選項


示例

使用 props 選項為元件建立 props。

export default {
    props: [
        'foodName',
        'foodDesc'
    ]
};
執行示例 »

檢視下面的更多示例


定義和用法

props 選項是一個數組(簡單形式)或一個物件(完整形式),其中包含所有 props。

props 選項被提供為一個數組(簡單形式,參見上面的示例)時,陣列僅包含字串形式的 prop 名稱。

props 選項被提供為一個物件(完整形式,參見下面的示例)時,除了 prop 名稱之外,還可以定義幾個選項。

選項 描述
type 定義 prop 的資料型別。可能的型別:String、Number、Boolean、Array、Object、Date、Function 或 Symbol。如果實際提供的 prop 的型別與定義的不同,Vue 將會生成一個警告。
default 定義 prop 的預設值。如果父元件沒有提供某個 prop,則會使用預設值。
required 定義 prop 是否必需。當在開發模式下執行 Vue 應用程式時,如果缺少必需的 prop,Vue 會在控制檯生成警告。
validator 定義一個自定義驗證器函式。該函式接收 prop 值作為引數,我們可以自行編寫規則來判斷 prop 是否有效。返回 false 將在開發模式下生成警告。

更多示例

示例

將 props 定義為帶有選項的物件。

FoodItem.vue:

<template>
	<div>
		<h2>{{ foodName }}</h2>
		<p>{{ foodDesc }}</p>
	</div>
</template>

<script>
export default {
	props: {
		foodName: {
			type: String,
			required: true
		},
		foodDesc: {
			type: String,
			required: false,
			default: 'This is the food description...'
		}
	}
};
</script>

App.vue:

<template>
  <h1>Food</h1>
  <p>Food description is not provided for 'Pizza' and 'Rice', so the default description is used.</p>
  <div id="wrapper">
    <food-item 
      food-name="Apples" 
      food-desc="Apples are a type of fruit that grow on trees."/>
    <food-item 
      food-name="Pizza"/>
    <food-item 
      food-name="Rice"/>
  </div> 
</template>

<style>
  #wrapper {
    display: flex;
    flex-wrap: wrap;
  }
  #wrapper > div {
    border: dashed black 1px;
    flex-basis: 120px;
    margin: 10px;
    padding: 10px;
    background-color: lightgreen;
  }
</style>
執行示例 »

相關頁面

Vue 教程:Vue Props

Vue 教程:Vue $emit() Method

Vue Reference: Vue $props Object


×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援