我有我的聊天,我不希望人们发送空消息,所以我希望我的输入成为必需的。谢谢你的帮助。
我尝试在输入行中输入“required=‘required’”,我也尝试过 veeValidate 但是当我使用它时它打断了我的聊天,我也尝试在 Props 和数据中输入“Required = true”但是没有一个好的结果
这是 ChatForm.vue
<template>
<div class="input-group" >
<input id="btn-input" type="text" name="message" class="form-control input-sm" placeholder="Ecrire..." v-model="newMessage" @keyup.enter="sendMessage">
<span class="input-group-btn">
<button class="btn btn-primary btn-sm" id="btn-chat" @click="sendMessage">
✓
</button>
</span>
</div>
</template>
<script>
export default {
props: ['user'],
data() {
return {
newMessage: '',
}
},
methods: {
sendMessage() {
this.$emit('messagesent', {
user: this.user,
message: this.newMessage
});
setTimeout(function() {
const messages = document.getElementById('mess_cont');
messages.scrollTop = messages.scrollHeight;
}, 200);
this.newMessage = '';
}
}
}
</script>
这是我在 app.blade.php 中的表单
<div id="app" class="container-chat">
<div class="row">
<div class="col-md-12 col-md-offset-2">
<div class="col-md-12 col-md-offset-2">
<div class="panel-body panel-content" id="mess_cont">
<chat-messages id="mess" :messages="messages" :currentuserid="{{Auth::user()->id}}"></chat-messages>
</div>
<div class="panel-footer">
<chat-form
v-on:messagesent="addMessage"
:user="{{ Auth::user() }}"
></chat-form>
</div>
</div>
</div>
</div>
</div>
原文由 Bastos 发布,翻译遵循 CC BY-SA 4.0 许可协议
尝试像这样更改您的 ChatForm.vue:
You are not treating the
input
in the correct way, theinput
which is required needs to be inside aform
and therequired
keyword如果input
字段为空,将阻止表单提交。