欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

vue聊天輸入

鄭鳳燕1年前6瀏覽0評論

在Vue中實現聊天輸入框常見需求是輸入框高度隨內容自動增長。下面是一個簡單實現的示例:

<template>
<div>
<textarea
ref="textarea"
v-model="input"
@input="handleInput"
:style="{ height: inputHeight }"
placeholder="請輸入內容">
</textarea>
</div>
</template>
<script>
export default {
data () {
return {
input: '',
inputHeight: 'auto'
}
},
methods: {
handleInput() {
this.$nextTick(() => {
this.inputHeight = this.$refs.textarea.scrollHeight + 'px'
})
}
}
}
</script>

代碼中,我們使用了textarea作為聊天輸入框,給它設置一個ref屬性用于獲取到元素節點,同時使用v-model指令將輸入內容與data中的input綁定。接著,我們監聽textarea的input事件,在該事件處理函數中,使用$nextTick方法獲取到textarea的scrollHeight屬性并將其設置為inputHeight,從而實現輸入框高度自適應的效果。

需要注意的是,textarea必須設置resize屬性為none或vertical,否則在部分瀏覽器下,輸入框高度無法自適應。

最后,我們還可以對輸入內容進行驗證和限制。例如,禁止輸入空格和特殊字符,限制輸入字數等。