国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

vue prop傳值類型檢驗(yàn)方式

瀏覽:5日期:2022-12-23 08:14:38

prop 傳值檢驗(yàn)規(guī)則

如果是 prop 是靜態(tài)傳值,則必須是 String 類型

如果是 prop 是動(dòng)態(tài)傳值,則可以驗(yàn)證任意類型

示例,如果必須要傳一個(gè)Number,就必須使用 bind

//聲明Vue.component('blog-post', { props: { postTitle: { type: Number, default: 10000 } }, template: '<h3>{{ postTitle }}</h3>'});//在template中調(diào)用,靜態(tài)傳值,值必定是 String<blog-post postTitle='54'></blog-post>//在template中調(diào)用,動(dòng)態(tài)傳值,值可以是 String、Number、Boolen。。。<blog-post :postTitle='54'></blog-post>

類型檢查的 type 值,可以是下列原生構(gòu)造函數(shù)中的一個(gè):

String

Number

Boolean

Array

Object

Date

Function

Symbol

type 還可以是一個(gè)自定義的構(gòu)造函數(shù),并且通過 instanceof 來進(jìn)行檢查確認(rèn)。

示例:

//例如,給定下列現(xiàn)成的構(gòu)造函數(shù):function Person (firstName, lastName) { this.firstName = firstName this.lastName = lastName}//可以使用,檢驗(yàn)是否為 Person 的實(shí)例Vue.component(’blog-post’, { props: { author: Person }})

補(bǔ)充知識(shí):vue中prop驗(yàn)證、類型檢查及注意事項(xiàng)

1、注意:null和undefined會(huì)通過任何類型檢測(cè)

2、數(shù)組或?qū)ο箢愋托枰峁┠J(rèn)值的話需要通過函數(shù)返回。詳情看這里

props:{// 數(shù)組或?qū)ο蟮哪J(rèn)值需要通過函數(shù)返回 authInfo:{ type:Object,default(){ return{ name:’張三’, sex:0 }} }, list:{ type:Array,default(){ return[ 1,2,3 ]} } }

3、使用自定義函數(shù)驗(yàn)證

props:{ address:{ validator(value){ return [’黑龍江’,’吉林’,’遼寧’].indexOf(value) !== -1} } }

4、非prop的特性:若一個(gè)屬性傳向一個(gè)組件,但是該組件并沒有定義相應(yīng) prop。則該屬性稱為非prop特性。非prop特性會(huì)作用到組件的根元素上。

若非prop中含有組件跟元素定義的屬性。則非prop中的值會(huì)覆蓋組件定義的值(這種情況稱作 非prop繼承)。style和class例外,它們會(huì)發(fā)生合并。

詳情看這里

不希望非prop繼承該怎么辦?

如果不希望非prop自動(dòng)作用到組件的根元素上可以在vue的組件選項(xiàng)里添加 inheritAttrs選項(xiàng)(此選項(xiàng)無法影響class和style的綁定)。

inheritAttrs:false

inheritAttrs屬性可以和$attrs配合可以是非prop作用到開發(fā)者想作用到的元素上。而不作用的根元素上。例:

<template> <div> <input type='text' v-bind='$attrs'> <!--將非prop綁定到此元素--> </div></template><script> export default { name: 'sg-test', inheritAttrs:false,//禁止 非prop繼承 }</script>

以上這篇vue prop傳值類型檢驗(yàn)方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 温宿县| 河源市| 河南省| 观塘区| 横山县| 运城市| 阜新市| 阿拉善左旗| 积石山| 江西省| 乌兰察布市| 涟源市| 无锡市| 绥江县| 凤台县| 仁化县| 古浪县| 乌兰浩特市| 城口县| 甘德县| 广南县| 自贡市| 普定县| 普宁市| 金堂县| 凉城县| 赤水市| 扎囊县| 获嘉县| 商都县| 紫阳县| 开封县| 南澳县| 仲巴县| 绥江县| 万载县| 邛崃市| 仁寿县| 南木林县| 屯留县| 威海市|