点击发送按钮是正常的,输入框停留在第一行,但是一旦使用回车Enter发送消息后,输入框总是停留在第二行,这是为什么呢?
这是因为keydown.enter事件的默认行为,它会在输入框内添加换行符。可以通过在sendMessage
方法中传递事件对象并调用其preventDefault
方法来实现这一点。按照以下步骤操作:
将@keydown.enter
事件侦听器更改为传递$event
参数:
<v-textarea v-model="inputText"
pt-8 label="请输入你的问题"
outlined clearable :rows="3"
@keydown.enter="sendMessage($event)"
/>
在sendMessage
方法中添加event
参数并调用event.preventDefault()
:
async sendMessage(event) {
event.preventDefault();
// ...
}
这样就完美解决keydown.enter事件的默认行为啦