vue 設(shè)置 input 為不可以編輯的實(shí)現(xiàn)方法
更新時(shí)間:2019年09月19日 10:51:49 作者:山村碼農(nóng)
今天小編就為大家分享一篇vue 設(shè)置 input 為不可以編輯的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
我用最笨的方法,先實(shí)現(xiàn)功能先,用兩個input,一個可以編輯,一個不可以編輯,失去焦點(diǎn)后隱藏可以點(diǎn)擊的那個,點(diǎn)“編輯”時(shí),顯示可以編輯的那個input
<div class="edit-item"> <input type="text" id="group-name" v-model="groupName" class="edit-input" disabled v-show="!isEditGroupName" > <input type="text" id="group-name2" v-model="groupName" class="edit-input" ref="groupName" @input="changeValue" @change="editGroupNameSave(groupInfo.name)" v-show="isEditGroupName" @blur="isEditGroupName = false"> <span @click="editGroupName"><icon-svg name="icon-kaka-compile" icon-style="edit-ico"></icon-svg></span> </div>
export default { name: 'RightSideBar', props: { }, data () { return { isEditGroupName: false, // 修改群名稱 } }, computed: { // 群名稱 groupName: { get () { return this.$store.getters.groupSetInfo.name }, set (val) { // 使用vuex中的mutations中定義好的方法來改變 let groupSetInfo = this.$store.getters.groupSetInfo let copyMyinfo = Object.assign({}, groupSetInfo) copyMyinfo.name = val this.$store.dispatch('groupSetInfo', copyMyinfo) } }, }, methods: { changeValue () { let leng = this.validateTextLength(this.groupName) if (leng >= 15) { this.$refs.groupName.maxLength = leng } else { this.$refs.groupName.maxLength = 30 } }, validateTextLength (value) { // 中文、中文標(biāo)點(diǎn)、全角字符按1長度,英文、英文符號、數(shù)字按0.5長度計(jì)算 let cnReg = /([\u4e00-\u9fa5]|[\u3000-\u303F]|[\uFF00-\uFF60])/g let mat = value.match(cnReg) let length if (mat) { length = (mat.length + (value.length - mat.length) * 0.5) return length } else { return value.length * 0.5 } }, // 打開編輯 editGroupName () { this.isEditGroupName = true let nickNameInput = document.querySelector('#group-name2') setTimeout(() => { nickNameInput.focus() }, 0) }, // 保存群名修改 editGroupNameSave (data) { }, }, created () { }
以上這篇vue 設(shè)置 input 為不可以編輯的實(shí)現(xiàn)方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue在App.vue文件中監(jiān)聽路由變化刷新頁面操作
這篇文章主要介紹了vue在App.vue文件中監(jiān)聽路由變化刷新頁面操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-08-08vue+element開發(fā)使用el-select不能回顯的處理方案
這篇文章主要介紹了vue+element開發(fā)使用el-select不能回顯的處理方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07vue+el-upload實(shí)現(xiàn)多文件動態(tài)上傳
這篇文章主要為大家詳細(xì)介紹了vue+el-upload實(shí)現(xiàn)多文件動態(tài)上傳,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10