Bas*_*tos 6 html javascript css laravel vue.js
我有我的聊天,我不希望人们发送空消息,所以我希望我的输入成为必需的。感谢您的帮助。
我尝试在输入行中添加“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>
Run Code Online (Sandbox Code Playgroud)
这是我在 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>
Run Code Online (Sandbox Code Playgroud)
尝试像这样更改您的 ChatForm.vue:
<template>
<form @submit.prevent="sendMessage">
<div class="input-group" >
<input id="btn-input" type="text" name="message" class="form-control input-sm" placeholder="Ecrire..." v-model="newMessage" required>
<span class="input-group-btn">
<button class="btn btn-primary btn-sm" type="submit" id="btn-chat">
✓
</button>
</span>
</div>
</template>
Run Code Online (Sandbox Code Playgroud)
您没有以input正确的方式处理 ,input所需的 需要位于 a 内form,并且如果字段为空,required关键字将阻止表单提交。input