中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

小程序中輸入框閃爍及重影BUG如何解決

發布時間:2021-07-06 10:17:07 來源:億速云 閱讀:868 作者:小新 欄目:web開發

這篇文章將為大家詳細講解有關小程序中輸入框閃爍及重影BUG如何解決,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

問題描述

在小程序input組件中,如果使用v-model進行雙向綁定,在輸入時會出現光標閃爍的BUG。

原因

造成這個BUG的原因,是因為在原生小程序input組件上,進行了封裝。才導致光標閃爍的問題。

解決方案

這里提供了兩種解決方案。各有各的優勢,請選取合適的方案:

一、棄用v-model,使用@input

適用于input組件單純是用戶手動輸入的,而沒有像授權獲取手機號,然后自動填入input組件中。這種需要賦予初始value的情況。即適用于單向綁定,而不是雙向綁定。

/** 
* 父組件
*/

// html
<childInput @input="onInput"/> <-- 注意這里不能使用:value=value賦予初始值,否則又會出現閃爍的BUG,因為此時就等同于v-model了

// js
import ChildInput from './ChildInput'
export default {
 components:{ ChildInput },
 data(){
 return {
  value:''
 }
 },
 methods(){
 onInput(e){
  this.value = e 
 }
 }
}

/** 
* 子組件 ChildInput
*/

// html

<input @input="$emit('input',$event)"/>

二、不封裝input組件,直接使用v-model

這種情況就是可以直接雙向綁定的了。具體原因還不清楚,可能是本身原生小程序的BUG。

/**
* 父組件,不使用封裝的子組件,直接使用原生組件。
*/

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

// js
export default {
 data(){
 return {
  value:''
 }
 }
}

問題描述:輸入框文字出現重影,如下

小程序中輸入框閃爍及重影BUG如何解決

輸入框 在失去焦點和獲得焦點的切換過程中,能清晰的看到輸入框的問題的重影現象,如上圖,經過一番折騰,我找到bug的出錯原因即初步解決方案,僅供參考

1、微信官方設計文檔給出了字體大小的規范,最小11pt,我自己設的是10pt,將其改成11pt之后,部分輸入框不再出現重影,而是微信官方渲染的加粗效果

微信官方字體規范如下:

小程序中輸入框閃爍及重影BUG如何解決

修改后的加粗效果如下:

小程序中輸入框閃爍及重影BUG如何解決

3、還有的輸入框扔會出現重影,細看,再繼續研究,發現是因為,flex布局,使得,輸入框的長度不一致,我把輸入框調成一樣寬度就可以,不過我也不知道具體為什么,你們可以試試

關于“小程序中輸入框閃爍及重影BUG如何解決”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

饶阳县| 毕节市| 孝感市| 乌兰浩特市| 于都县| 茂名市| 桑日县| 白朗县| 广水市| 龙山县| 苏尼特右旗| 诸暨市| 凤庆县| 堆龙德庆县| 东安县| 蓝山县| 布尔津县| 会宁县| 玉屏| 恩施市| 夏河县| 商南县| 阿巴嘎旗| 色达县| 金山区| 丰城市| 宾川县| 仙游县| 滨海县| 利辛县| 浦北县| 蕲春县| 通渭县| 梧州市| 大渡口区| 武清区| 阳泉市| 阳城县| 安新县| 清徐县| 九龙县|