vue屬性props默認(rèn)類(lèi)型的寫(xiě)法介紹
vue屬性props默認(rèn)類(lèi)型
Vue.component('my-component', {
props: {
// 基礎(chǔ)的類(lèi)型檢查 (`null` 匹配任何類(lèi)型)
//單個(gè)類(lèi)型
propA: Number,
// 多個(gè)可能的類(lèi)型
propB: [String, Number],
// 必填的字符串
propC: {
type: String,
required: true
},
//函數(shù)
propC: {
type:Function,
required: true
},
// 帶有默認(rèn)值的數(shù)字
propD: {
type: Number,
default: 100
},
//多個(gè)可能類(lèi)型帶默認(rèn)值
propE: {
type: [String, Number],
default: 100
},
// 帶有默認(rèn)值的對(duì)象
propF: {
type: Object,
// 對(duì)象或數(shù)組且一定會(huì)從一個(gè)工廠函數(shù)返回默認(rèn)值
default: function () {
return { message: 'hello' }
}
},
// 自定義驗(yàn)證函數(shù)
propG: {
validator: function (value) {
// 這個(gè)值必須匹配下列字符串中的一個(gè)
return ['success', 'warning', 'danger'].indexOf(value) !== -1
}
}
}
})
props自定義屬性
1.這是一個(gè)自定義屬性,在封裝通用組件的時(shí)候,合理地使用props可以極大的提高組件的復(fù)用性
2.語(yǔ)法:可以定義為數(shù)組類(lèi)型的:
export default {
? ? props:['init']
}也可以定義為對(duì)象類(lèi)型:
export default {
? // props 是"自定義屬性",允許使用者通過(guò)自定義屬性,為當(dāng)前組件指定初始值
? // 自定義屬性的名字,是封裝者自定義的(只要名稱(chēng)合法即可)
? // props 中的數(shù)據(jù),可以直接在模板結(jié)構(gòu)中被使用
? // 注意:props 是只讀的,不要直接修改 props 的值,否則終端會(huì)報(bào)錯(cuò)!
? // props: ['init'],
? props: {
? ? // 自定義屬性A : { /* 配置選項(xiàng) */ },
? ? // 自定義屬性B : { /* 配置選項(xiàng) */ },
? ? // 自定義屬性C : { /* 配置選項(xiàng) */ },
? ? init: {
? ? ? // 如果外界使用 Count 組件的時(shí)候,沒(méi)有傳遞 init 屬性,則默認(rèn)值生效
? ? ? default: 0,
? ? ? // init 的值類(lèi)型必須是 Number 數(shù)字
? ? ? type: Number,
? ? ? // 必填項(xiàng)校驗(yàn)
? ? ? required: true
? ? }
? },
}注意:數(shù)組類(lèi)型是沒(méi)有default屬性的,只有定義為對(duì)象類(lèi)型才存在
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Vue項(xiàng)目獲取url中的參數(shù)(親測(cè)可用)
這篇文章主要介紹了Vue項(xiàng)目獲取url中的參數(shù),本文通過(guò)兩種情況分析給大家詳細(xì)介紹,感興趣的朋友一起看看吧2022-08-08
vue使用$attrs和$listeners多級(jí)組件嵌套傳遞數(shù)據(jù)
這篇文章主要為大家介紹了vue使用$attrs和$listeners多級(jí)組件嵌套傳遞數(shù)據(jù)示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08
vue3+ant?design的form數(shù)組表單校驗(yàn)方法
這篇文章主要介紹了vue3+ant?design的form數(shù)組表單,如何校驗(yàn),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2023-09-09
使用Webpack提升Vue.js應(yīng)用程序的4種方法(翻譯)
這篇文章主要介紹了使用Webpack提升Vue.js應(yīng)用程序的4種方法(翻譯),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10
vant steps流程圖的圖標(biāo)使用slot自定義方式
這篇文章主要介紹了vant steps流程圖的圖標(biāo)使用slot自定義方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06
如何解決el-checkbox選中狀態(tài)更改問(wèn)題
這篇文章主要介紹了如何解決el-checkbox選中狀態(tài)更改問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07
Vue中的ref作用詳解(實(shí)現(xiàn)DOM的聯(lián)動(dòng)操作)
這篇文章主要介紹了Vue中的ref作用詳解(實(shí)現(xiàn)DOM的聯(lián)動(dòng)操作),需要的朋友可以參考下2017-08-08

