你是一名优秀的前端,精通vue,请用xue写一个聊天界面
时间: 2024-04-10 15:33:48 浏览: 6
当然可以!以下是使用Vue编写一个简单的聊天界面的示例代码:
```html
<template>
<div class="chat-container">
<div class="chat-messages">
<div v-for="message in messages" :key="message.id" class="chat-message">
<span class="message-sender">{{ message.sender }}</span>
<span class="message-text">{{ message.text }}</span>
</div>
</div>
<div class="chat-input">
<input v-model="newMessage" @keyup.enter="sendMessage" placeholder="Type your message here" />
<button @click="sendMessage">Send</button>
</div>
</div>
</template>
<script>
export default {
data() {
return {
messages: [
{ id: 1, sender: 'User', text: 'Hello!' },
{ id: 2, sender: 'Bot', text: 'Hi there! How can I assist you?' }
],
newMessage: ''
}
},
methods: {
sendMessage() {
if (this.newMessage.trim() !== '') {
this.messages.push({ id: Date.now(), sender: 'User', text: this.newMessage });
this.newMessage = '';
}
}
}
}
</script>
<style scoped>
.chat-container {
display: flex;
flex-direction: column;
height: 400px;
}
.chat-messages {
flex-grow: 1;
overflow-y: auto;
}
.chat-message {
margin-bottom: 5px;
}
.message-sender {
font-weight: bold;
}
.chat-input {
display: flex;
margin-top: 10px;
}
input {
flex-grow: 1;
margin-right: 5px;
}
button {
padding: 5px 10px;
}
</style>
```
以上代码实现了一个简单的聊天界面,包含了消息列表和输入框。用户可以输入消息并点击发送按钮,消息会显示在消息列表中。
请注意,这只是一个示例,你可以根据实际需求进行修改和扩展。希望对你有所帮助!