欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

如何使用vue實現(xiàn)密碼顯示與隱藏按鈕的自定義組件功能-創(chuàng)新互聯(lián)

小編給大家分享一下如何使用vue實現(xiàn)密碼顯示與隱藏按鈕的自定義組件功能,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

酉陽土家族苗族網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)公司!從網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、APP開發(fā)、響應式網(wǎng)站開發(fā)等網(wǎng)站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)公司成立與2013年到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設就選創(chuàng)新互聯(lián)公司

思路

實現(xiàn)該組件有兩個思路,一個使用v-model進行雙向綁定,一個是使用prop的.sync修飾符、父子組件通信。

1.v-model形式

v-model的實現(xiàn)需要在自定義組件中自定義一個inputvalue值,因為vue中的父子組件傳遞機制問題,在組件中直接修改props注入的key字段時,vue會給出錯誤。子組件中定義inputvalue字段,用于子組件中input元素的值的雙向綁定,子組件中的input數(shù)據(jù)綁定可以使用v-model,也可以使用實現(xiàn)v-model的原理語法糖,下面兩種方式都可作為子組件中的數(shù)據(jù)綁定。

<input type="password" v-model="inputvalue"/>
<input type="password" :value="inputvalue" @input="inputvalue=$event.target.value"/>

關(guān)于v-model的實現(xiàn)可查看其他關(guān)于v-model的實現(xiàn)文章。

最后實現(xiàn)的子組件文件如下,這里的顯示隱藏的點擊使用的是文字,實際使用時可使用對應的icon字體圖標,并設定一定的樣式。

<template>
<div>
  <input :type='show?"text":"password"' :value="inputvalue" 
@input="inputvalue=$event.target.value" :placeholder='placeholder'/>
  <i :title="show?'隱藏密碼':'顯示密碼'" @click="changePass" 
>{{show?'隱藏':'顯示'}}</i>
</div>
</template>
 
<script>
export default {
  props: {
    value: {
      default: "",
      type: String
    },
    placeholder: {
      default: "",
      type: String
    },
  },
  data(){
    return{
      inputvalue:"",
      show:false,//密碼顯示或隱藏的Boolean,默認false,密碼不顯示
    }
  },
  watch:{
    inputvalue(news,olds){
      this.$emit("input",news);
    }
  },
  mounted(){
    this.inputvalue=this.value;
  },
  methods:{
    changePass(){
      this.show=!this.show;
    }
  }
}
</script>
<style>
</style>

父組件引用方式如下

<input-password v-model="value"></input-password>

因為這里實現(xiàn)的v-model的綁定方式,而v-model的實現(xiàn)就是監(jiān)聽的input事件,則當inputvalue改變時,則向父組件發(fā)出input事件,父組件使用v-model監(jiān)聽input事件,修改父組件中的value值,此處實現(xiàn)了雙向綁定,同時在顯示和隱藏的i標簽上綁定事件,點擊i標簽時改變show的值,通過判斷show的值動態(tài)改變input的type,實現(xiàn)密碼的顯示和隱藏。

2。.sync修飾符

.sync修飾符的實現(xiàn)與v-model的實現(xiàn)方式相同,唯一不同的是watch監(jiān)聽inputvalue變化時向父組件發(fā)出的事件修改為 "update:value" ,修改后inputvalue的監(jiān)聽函數(shù)如下

inputvalue(news,olds){
      this.$emit("update:value",news);
    },

父組件引用方式

<input-password :value.sync="value"></input-password>

寫到最后

其實兩種方式的實現(xiàn)最主要需要的還是父子組件之間的傳值,使用emit,vuex,或自定義倉庫等都可實現(xiàn)父子組件中的傳值,監(jiān)聽inputvalue修改時可以同時使用兩種emit發(fā)送,可同時支持兩種方式。

以上是“如何使用vue實現(xiàn)密碼顯示與隱藏按鈕的自定義組件功能”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設計公司行業(yè)資訊頻道!

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

本文名稱:如何使用vue實現(xiàn)密碼顯示與隱藏按鈕的自定義組件功能-創(chuàng)新互聯(lián)
當前地址:http://chinadenli.net/article8/deegop.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供響應式網(wǎng)站、網(wǎng)站收錄、服務器托管網(wǎng)站策劃、電子商務移動網(wǎng)站建設

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設公司