国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

Vue 組件參數校驗與非props特性的方法

2019-11-19 12:09:39
字體:
來源:轉載
供稿:網友

子組件接收父組件的參數的時候,props注冊接收的參數

props:['count']

子組件可以對接收的參數校驗。

例如規定接收的count參數要求是String

props:{count:String}

如果count是別的類型就會報錯  

組件的參數校驗

組件的參數校驗指的是什么呢?你父組件向子組件傳遞的內容,子組件有權對這個內容進行一些約束,這個約束我們可以把它叫做參數的校驗。

<div id="root">  <child content="hello world"></child></div>Vue.component('child',{  props: ['content'],  template: '<div>{{content}}</div>'})let vm = new Vue({  el: '#root',})

現在有這樣一個需求,父組件調用子組件的時候,傳遞的這個content,我要做一些約束,要求它我傳遞過來的content必須是一個字符串,我們該怎么實現呢?

<div id="root">  <child content="hello world"></child></div>Vue.component('child',{  props: {    content: String     //子組件接收到的 content 這個屬性,必須是一個字符串類型的  },  template: '<div>{{content}}</div>'})let vm = new Vue({  el: '#root',})

組件接收到的content這個屬性,必須是一個字符串類型的,如果我需要的參數類型是字符串或者數組,又該怎么寫呢?

props: {  content: [ String, Number ]},

content的類型,可以用數組來表示。

content其實還有更復雜的用法:

props: {  content: {    type: Sring,    required: true,         //必傳    default: 'default value',    //默認顯示,非必傳會顯示    validator(value){       //檢測 content 的長度,如果長度大于 5,正常顯示,如果長度小于 5 則報錯       return (value.length > 5)    }  }}

非props特性

說到非props特性,它一定和props特性相對應。

props特性:當你的父組件使用子組件的時候,通過屬性向子組件傳值的時候,恰好子組件里面聲明了對父組件傳遞過來的屬性的一個接收,也就是說父子組件有個對應關系,如果你這么寫我們就把叫做props特性

props特性的特點是,如下圖:

  1. 我們在子組件里有一個content的內容傳遞,這個屬性的內容傳遞是不會在dom標簽上進行顯示的。
  2. 當你父組件傳遞了content,你子組件接收了這個content,你在模版里就可以直接通過插值表達式或者通過this.content,去取得content里面的內容了。

props特性:父組件向子組件傳遞了一個屬性,但是子組件并沒有props這塊的內容,也就是說子組件并沒有聲明我要接收父組件的傳遞過來的內容

props特點:

  • props特性在子組件里面,沒辦法獲取到你父組件傳遞的內容,因為你壓根沒聲明你要獲取的內容,也就沒法用。
  • 如果我們用的是非props特性,那么這個特性是會顯示在dom標簽上的

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 舒兰市| 博湖县| 青阳县| 突泉县| 台东县| 城步| 清徐县| 苍南县| 榆林市| 绍兴县| 梨树县| 营山县| 武夷山市| 石首市| 肃南| 宁安市| 开封县| 宣威市| 清水县| 澜沧| 鹿邑县| 仪陇县| 门源| 临西县| 岗巴县| 灵璧县| 锡林浩特市| 田阳县| 松阳县| 大同市| 那曲县| 深圳市| 喀喇沁旗| 文昌市| 西乌珠穆沁旗| 伊吾县| 白城市| 胶州市| 灌南县| 诸城市| 华容县|