javascript - Firestore 仅显示来自文档的消息
问题描述
我试图只显示用户从文档输入的消息。显示文档的代码是这样的:
<v-list-item>
<v-list-item v-for="message in task" v-bind:key="message">
<v-chip color="primary" class="sent">{{message}}</v-chip>
</v-list-item>
<v-container class="messagebox">
<v-row>
<v-col cols="12">
<v-text-field
v-model="message"
rounded
filled
outlined
dense
label="Message"
append-icon="mdi-send-circle"
@click:append="addTask"
></v-text-field>
</v-col>
</v-row>
</v-container>
这从 firebase 获取信息,这是我必须将数据发送到 firebase 的代码
<script>
import { db } from "@/main";
export default {
data: () => ({
message: null,
task: []
}),
mounted() {
this.getTask();
},
methods: {
scrollToEnd() {
var chatbox = document.querySelector("#chatbox");
chatbox.scrollTop = chatbox.scrollHeight - chatbox.clientHeight;
},
async getTask() {
let snapshot = await db.collection("test").get();
let task = [];
snapshot.forEach(doc => {
let appData = doc.get('message');
task.push(appData);
});
this.task = task;
},
async addTask() {
if (this.message != "") {
await db.collection("test").add({
message: this.message
});
this.getTask();
this.message = "";
}
}
}
};
</script>
但是,当我运行我的代码时,我得到 [ {"hi"}],而不仅仅是 "hi"
解决方案
最简单的方法是将视图中数据的显示方式更改为:
<li v-for="msg in message">
<v-chip color="primary" class="sent" style="display.block">{{ msg.message }}
</li>
推荐阅读
- react-native - 如何更改 TopNavigationAction 图标大小
- javascript - 在 React 功能组件中使用 async/await
- kubernetes - 是否可以使用自定义虚拟机启动 minikube?
- c - 如何做正则表达式模式多重匹配C
- python - 找不到 sass 文件
- java - Janusgraph 无法连接到 Hbase
- ios - 使用 Swift 4.2 进行嵌套 JSON 解析
- python - 我的 pygame Alien Invasion 的第一部分有什么遗漏吗?
- java - iText 如何同时使用 PdfWriterPipeline 和 PdfSmartCopy?
- vba - 取消输入框退出子