透過宣告 props 的方式,來進行屬性驗證。
在 component 中的 props,有兩種宣告的方式。
- 陣列宣告 - 型別不被限制。
- 物件宣告 - 可以定義屬性類型、驗證器等。
# 陣列宣告:
props: ['name', 'age', 'coding', 'habits', 'parents'];
# 物件宣告:
透過給予每一個傳進來的值一個型別,當傳入的資料型別錯誤時,console 中會告訴你錯誤的屬性名稱、期望型別、目前型別,在開發除錯時非常的方便。
props: {
name: Number,
age: Number,
coding: Boolean,
habits: Array,
parents: Object,
},
# 複數型別:
有時候傳進來的資料型別可以是多個的,設定如下:
props: {
name: [String, Number],
...
...
...
...
}
# 可設定的型別:
String
Number
Boolean
Array
Object
Date
Function
Symbol
# props 的多功能設定:
props: {
...
age: {
type: Number,
required: true,
default: 15,
validator: function (value) {
return value >= 0;
},
},
...
...
...
}
type
:設定傳入資料的型別。
required
:父物件是否必須傳遞資料到 component。
default
:當沒有獲取到資料時,預設的值。
validator
:驗證值是否滿足條件。