【发布时间】:2020-04-09 15:19:54
【问题描述】:
数据未显示,我不知道如何将值从 firebase 推送到 v-data-table 值。这是我的代码。
<template>
<div class="dashboard">
<h2 class="subheading mx-5">Subject</h2>
<v-btn block color="primary mt-5" @click="enrollSubjects()">Enroll Subjects</v-btn>
<v-container class="my-5">
<template>
<v-card>
<v-card-title>
Courses
<v-spacer></v-spacer>
<v-text-field v-model="search" append-icon="search" label="Search" single-line hide-details></v-text-field>
</v-card-title>
<v-data-table v-model="selected" :headers="headers" :items="courses" show-select :single-select="singleSelect" item-key="descrip_title" :search="search">
</v-data-table>
</v-card>
</template>
</v-container>
</div>
</template>
<script>
// @ is an alias to /src
import db from '@/firebase/init'
export default {
name: 'dashboard',
data(){
return{
search: '',
singleSelect: false,
subjects: [],
selected: [],
headers: [
{text: 'Control No.', value: 'controlno'},
{text: 'Course No.', value: 'courseno'},
{text: 'Descriptive Title', value: 'descrip_title'},
{text: 'Schedule(In)', value: 'schedin'},
{text: 'Schedule(Out)', value: 'schedout'},
{text: 'Room No.', value: 'roomno'},
{text: 'Days', value: 'days'},
{text: 'Units', value: 'units'}
],
courses: []
}
},
methods:{
enrollSubjects(){
if(this.selected === this.selected){
this.$swal({
title: 'No Course Selected',
text: 'Please select course/s',
type: 'error'
})
}
},
created(){
db.collection('masterlist_courses').get()
.then(snapshot => {
snapshot.forEach(doc => {
let course = doc.data()
course.id = doc.id
this.courses.push(course)
})
})
}
}
}
</script>
我在firebase和vuetify中练习,我不知道如何将这个推送到v-data-table的值。我很难过,它没有向数据表显示任何内容,也没有错误。在我对firebase中的数据进行编码后没有显示任何内容
【问题讨论】:
-
您收到数据了吗?如果你像这样输出“课程”会发生什么: {{ this.courses }} ?
-
我不确定。我检查了警报它只是说[对象,对象]
-
也许可以看看
组件中的 item-text 和 item-value -
我不知道是什么问题,但是当我将创建的按钮放在按钮上时,它会显示数据
标签: firebase vue.js google-cloud-firestore vuetify.js