Vue使用Props實現(xiàn)組件數(shù)據(jù)交互的示例代碼
props可以是一個數(shù)組或?qū)ο?,用于指定子組件接受的屬性名稱。通過在父組件中使用子組件時,通過屬性的方式將數(shù)據(jù)傳遞給子組件,屬性名即為在子組件中聲明的props的屬性名稱。子組件可以在其模板中通過props屬性訪問父組件傳遞的數(shù)據(jù)。props的作用是向子組件傳遞數(shù)據(jù),允許傳遞任意數(shù)量的prop和任意類型的prop。在Vue 3和TypeScript中,深入了解組件的Props是非常重要的,因為可以在組件的選項中使用props屬性來定義Props的類型和驗證規(guī)則。
使用如下:
1、在使用子組件的父組件傳遞數(shù)據(jù)
<RefreshBtn @onFreshEvent="getData" :newsRefresh="newsRefresh"/>
2、子組件數(shù)據(jù)應用,使用props確定接收數(shù)據(jù)的類型和默認值,在props中還可以進行數(shù)據(jù)校驗。
<template> <button @click="refreshHandle">刷新</button> <p>父頁面數(shù)據(jù):{{newsRefresh}}</p> </template> <script> export default { name: "RefreshBtn", props: { newsRefresh: { type: String, default: "" } }, data() { return { target: 1 } }, methods: { refreshHandle() { this.$emit("onFreshEvent",this.target); this.target += 1; } } } </script>
props完整的校驗寫法:
props: { 校驗的屬性名: { type: 類型, // Number String Boolean ... required: true, // 是否必填 default: 默認值, // 默認值 validator (value) { // 自定義校驗邏輯 return 是否通過校驗 } } },
<script> export default { // 完整寫法(類型、默認值、非空、自定義校驗) props: { w: { type: Number, //required: true, default: 0, validator(val) { // console.log(val) if (val >= 100 || val <= 0) { console.error('傳入的范圍必須是0-100之間') return false } else { return true } }, }, }, } </script>
到此這篇關于Vue使用Props實現(xiàn)組件數(shù)據(jù)交互的示例代碼的文章就介紹到這了,更多相關Vue Props數(shù)據(jù)交互內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
el-select與el-tree結(jié)合使用實現(xiàn)樹形結(jié)構多選框
我們在實際開發(fā)中需要用到下拉樹,elementUI是沒有這個組件的,我們就要自己去寫了,下面這篇文章主要給大家介紹了關于el-select與el-tree結(jié)合使用實現(xiàn)樹形結(jié)構多選框的相關資料,需要的朋友可以參考下2022-10-10elementUI動態(tài)表單?+?el-select?按要求禁用問題
這篇文章主要介紹了elementUI動態(tài)表單?+?el-select?按要求禁用問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-10-10Vue-Router2.X多種路由實現(xiàn)方式總結(jié)
下面小編就為大家分享一篇Vue-Router2.X多種路由實現(xiàn)方式總結(jié),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-02-02vue+video.js視頻播放、視頻切換、視頻斷點分段上傳功能
本次需求是做一個視頻列表,點擊視頻列表播放對應視頻;同時要求實現(xiàn)斷點分段上傳大文件(視頻)的功能,今天通過本文給大家講解下vue+video.js視頻播放、視頻切換、視頻斷點分段上傳功能,感興趣的朋友一起看看吧2022-12-12Vue結(jié)合Video.js播放m3u8視頻流的方法示例
本篇文章主要介紹了Vue+Video.js播放m3u8視頻流的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-05-05