最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue中的components組件與props的使用解讀

 更新時(shí)間:2023年05月17日 09:54:43   作者:代碼の搬運(yùn)工  
這篇文章主要介紹了Vue中的components組件與props的使用解讀,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

components組件與props的使用

vue-cli 3.0 項(xiàng)目,使用components組件化開發(fā),可以減少不必要重復(fù)的代碼

初始化vue-cli3.0的項(xiàng)目的結(jié)構(gòu)目錄下的src下會(huì)有個(gè)components文件夾

init

建議:在components中創(chuàng)建對應(yīng)模塊的文件夾,存放該模塊的公共組件

在loginReg.vue文件夾中寫上代碼,通過props父傳子的方式,那需要接收父組件的值使用 綁定:屬性名="變量"的形式。并且在props中定義

以下是loginReg.vue 文件:

<template>
  <div class="loginRegComponent">
    <div class="titleBox">
      <p class="title-left"></p>
      <p v-if="title" class="title-center">{{title}}</p>
      <p class="title-right" v-if="lesgo=='去注冊'" @click="$router.push('/register')">{{lesgo}}</p>
      <p class="title-right" v-else @click="$router.push('/login')">{{lesgo}}</p>
    </div>
    <input type="text" v-model="userinfo.username" class="username input-group form-control glyphicon glyphicon-user" :placeholder="placeholderUser">
    <input type="password" v-model="userinfo.password" class="password input-group form-control" :placeholder="placeholderPsw">
    <div>
      <input type="text" v-model="userinfo.code" class="code input-group form-control" :placeholder="placeholderCode">
      <span class="codeNumber"></span>
    </div>
    <button class="btn btn-primary" @click="btnSubmit">{{btnText}}</button>
  </div>
</template>
<script>
export default {
  props: {
    title: String,
    placeholderUser:String,
    placeholderPsw: String,
    placeholderCode: Number,
    btnText:{
      default: "text", //可以傳個(gè)默認(rèn)值
      type:String 		//類型
	},
    lesgo: String,
  },
  data() {
    return {
      userinfo: {
        username: null,
        password: null,
        code: null,
      },
    };
  },
  methods: {
    btnSubmit() { //發(fā)送事件  數(shù)據(jù)
      this.$emit("btnSubmit", this.userinfo);
    },
  },
};
</script>

在login.vue 引入寫好的loginReg.vue組件,通過props的參數(shù)名來對應(yīng)的設(shè)置值

注冊頁面也是對飲的引入<login-reg> 的方式進(jìn)行傳參,在不需要顯示對應(yīng)的input框的時(shí)候可以使用v-if來判斷,存在值才顯示。

login.vue頁面:

<template>
  <div id="login" class="login" :style="{height:DocHeight+'px'}">
    <div class="container-fluid">
      <login-reg 
	      title="登錄" 
	      placeholderUser="請輸入賬號" 
	      placeholderPsw="請輸入密碼" 
	      placeholderCode="請輸入驗(yàn)證碼" 
	      btnText="登錄" 
	      @btnSubmit="btnSubmit"  //接收事件
	      lesgo="去注冊"
      >
      </login-reg>
    </div>
  </div>
</template>
<script>
// 通過import的方式導(dǎo)入
import loginReg from "@/components/loginReg/loginReg.vue";
export default {
  name: "login",
  components: {//注冊組件
    loginReg,
  },
  data() {
    return {};
  },
  methods: {
    btnSubmit(data) {//接收子組件發(fā)送過來的事件/數(shù)據(jù)
      console.log(data);
    },
  }

效果圖

vue中props的默認(rèn)寫法

默認(rèn)寫法

? props: {
? ? rowClick: {
? ? ? type: Function,
? ? ? default: function() {}
? ? },
? ? title: {
? ? ? type: String,
? ? ? default: "標(biāo)題"
? ? },
? ? display: {
? ? ? type: String,
? ? ? default: "table"?
? ? },
? ? columnCount: {
? ? ? type: Number,
? ? ? default: 4
? ? },
? ? columns: {
? ? ? type: Array,
? ? ? default() {
? ? ? ? return [];
? ? ? }
? ? },
? ? showPage: {
? ? ? type: Boolean,
? ? ? default: true
? ? },
? ? api: {
? ? ? type: Object,
? ? ? default() {
? ? ? ? return {};
? ? ? }
? ? },
? ? parameter: {
? ? ? type: Object,
? ? ? default() {
? ? ? ? return {};
? ? ? }
? ? },
? ? defaultParameter: {
? ? ? type: Boolean,
? ? ? default() {
? ? ? ? return true;
? ? ? }
? ? }
? },

注意:

如果默認(rèn)值得類型為數(shù)組或者對象,一定要在函數(shù)中返回這個(gè)默認(rèn)值,而不是直接寫,否則報(bào)錯(cuò)

正確:

?menu:{
? ? ?type:Array,
? ? ?default:function(){
? ? ? ? ?return []
? ? ?}
?}

錯(cuò)誤

?menu:{
? ? ?type:Array,
? ? ?default:[]
?}

或者直接跟上面第一個(gè)代碼一樣,不管什么類型,都寫在函數(shù)返回中。 

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue中v-for數(shù)據(jù)狀態(tài)值變了,但是視圖沒改變的解決方案

    vue中v-for數(shù)據(jù)狀態(tài)值變了,但是視圖沒改變的解決方案

    這篇文章主要介紹了vue中v-for數(shù)據(jù)狀態(tài)值變了,但是視圖沒改變的解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Vue3 el-switch @change事件在初始化時(shí)會(huì)自動(dòng)調(diào)用問題處理的多種方法

    Vue3 el-switch @change事件在初始化時(shí)會(huì)自動(dòng)調(diào)用問題處理的多種方法

    本文介紹Vue3中Switch切換確認(rèn)彈窗的兩種實(shí)現(xiàn)方法:方法一通過before-change攔截器精準(zhǔn)控制(推薦);方法二用初始化狀態(tài)標(biāo)識兼容舊項(xiàng)目,并提供統(tǒng)一封裝方案,適用于ElementPlus/NaiveUI等組件,感興趣的朋友一起看看吧
    2025-07-07
  • vue如何在引入的el-tree前添加圖標(biāo)

    vue如何在引入的el-tree前添加圖標(biāo)

    這篇文章主要介紹了vue如何在引入的el-tree前添加圖標(biāo)問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • Vuex 使用 v-model 配合 state的方法

    Vuex 使用 v-model 配合 state的方法

    這篇文章主要介紹了Vuex 使用 v-model 配合 state的方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-11-11
  • Vue不能下載xls以及文件亂碼問題解決

    Vue不能下載xls以及文件亂碼問題解決

    最近工作中遇到了一些問題,通過查找相關(guān)資料終于找到了相關(guān)的解決方法,這篇文章主要給大家介紹了關(guān)于Vue不能下載xls以及文件亂碼問題解決的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • 解決創(chuàng)建vue項(xiàng)目后沒有vue.config.js文件的問題

    解決創(chuàng)建vue項(xiàng)目后沒有vue.config.js文件的問題

    這篇文章給大家主要介紹如何解決創(chuàng)建vue項(xiàng)目后沒有webpack.config.js(vue.config.js)文件,文中有詳細(xì)的解決方法,感興趣的朋友可以參考閱讀下
    2023-07-07
  • vue中watch監(jiān)聽器用法之deep、immediate、flush

    vue中watch監(jiān)聽器用法之deep、immediate、flush

    Vue是可以監(jiān)聽到多層級數(shù)據(jù)改變的,且可以在頁面上做出對應(yīng)展示,下面這篇文章主要給大家介紹了關(guān)于vue中watch監(jiān)聽器用法之deep、immediate、flush的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • 詳解vue2.6插槽更新v-slot用法總結(jié)

    詳解vue2.6插槽更新v-slot用法總結(jié)

    在 2.6.0 中,我們?yōu)榫呙宀酆妥饔糜虿宀垡肓艘粋€(gè)新的統(tǒng)一的語法 (即 v-slot 指令)。這篇文章主要介紹了詳解vue2.6插槽更新v-slot用法總結(jié),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-03-03
  • 解決vue keep-alive 數(shù)據(jù)更新的問題

    解決vue keep-alive 數(shù)據(jù)更新的問題

    今天小編就為大家分享一篇解決vue keep-alive 數(shù)據(jù)更新的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • Vue中的v-for列表循環(huán)示例詳解

    Vue中的v-for列表循環(huán)示例詳解

    循環(huán)使用v-for指令,v-for指令需要以site in sites形式的特殊語法,sites是源數(shù)據(jù)數(shù)組并且site是數(shù)組元素迭代的別名,下面這篇文章主要給大家介紹了關(guān)于Vue中v-for列表循環(huán)的相關(guān)資料,需要的朋友可以參考下
    2022-11-11

最新評論

泸定县| 东丽区| 祁东县| 博客| 青浦区| 井冈山市| 陆丰市| 霍城县| 清苑县| 侯马市| 崇文区| 漾濞| 星座| 安丘市| 梁河县| 闽侯县| 合水县| 西充县| 河曲县| 沅陵县| 石林| 哈尔滨市| 吉安县| 那曲县| 油尖旺区| 永安市| 云林县| 文登市| 栾城县| 凤山市| 古丈县| 三河市| 上林县| 利津县| 洪湖市| 丹巴县| 如皋市| 昆明市| 仙桃市| 宁化县| 峨眉山市|