firebase - 当我点击上传按钮时,它给出了一个错误:`TypeError: Cannot read property 'name' of null`
问题描述
**当我单击upload
按钮时,它会出现错误:TypeError: Cannot read property 'name' of null
形式
<form class="form" @submit.prevent="upload">
<input required name="name" v-model="name" placeholder="Name" type="text" autocomplete="off">
<input required name="email" v-model="email" placeholder="E-mail" type="email" autocomplete="off">
<input required name="phone" v-model="phone" placeholder="+7(555)555555" maxlength=13 minlength=13 type="phone" autocomplete="off">
<textarea required name="message" v-model="message" rows="4" placeholder="Message" autocomplete="off"></textarea>
<div >
<button class="button" @click="upload">
<div >
<img class="upload" src="@/img/upload.png"></div>
Upload
</button> </div>
<button class="button">Send</button>
</form>
脚本
import { usersCollection, storage } from '../../firebase/init'
export default {
data() {
return {
name: '',
email: '',
message: '',
phone:'',
file: null,
}
},
methods: {
async upload() {
try {
const fileRef = 'uploads/files/' + this.file.name
const snapshot = await storage.ref(fileRef).put(this.file)
let data = {
name: this.name,
email: this.email,
message: this.message,
phone: this.phone,
image: fileref
}
const doc = await usersCollection.add(data)
await this.resetForm()
} catch(e) {
console.log(e)
}
}
}
}
请帮助找到错误
解决方案
原因是您试图从不是对象的文件变量中读取名称属性
data() {
return {
name: '',
email: '',
message: '',
phone:'',
file: {}, // changed null to {}
}
},
推荐阅读
- heroku - 即使应用程序正在运行,Heroku 部署也会失败
- c++ - 放大的 OpenCV 图像
- powershell - 即使设置为 SilentlyContinue,PowerShell Remove-Item 也会返回错误
- discord.py - 可以回复的 Discord dm 机器人
- python - 使用 Concat 将系列移位连接到数据框
- ios - 从嵌入式 ViewController 呈现 UIViewController 保持其边界
- loops - 使用 requests.get 循环并避免超时错误
- python - 如何使用 Jupyter Notebook 访问远程 smb 驱动器上的文件?
- django - 在 postgeSQL 和 Django-rest 项目的 models.py 中定义对象列表
- neo4j - neo4j-admin 导入“多行字段是非法的”