node.js - Node.js / React - 无法读取未定义的属性“地图”
问题描述
我是第一次学习 React/Node.js。尝试访问我的应用程序时出现以下错误:
(节点:10188)UnhandledPromiseRejectionWarning:TypeError:无法读取未定义的属性“地图”
错误在以下代码中:
import Image from '../models/Image';
export default {
render(image: Image) {
return {
id: image.id,
url: `http://localhost:3333/uploads/${image.path}`,
};
},
renderMany(images: Image[]) {
return images.map((image) => this.render(image));
},
};
显然,问题出在“images.map”中,但我不知道如何解决它。
正在从此文件导入“图像”组件:
import { Entity, Column, PrimaryGeneratedColumn, ManyToOne, JoinColumn } from 'typeorm';
import Orphanage from './Orphanage';
@Entity('images')
export default class Image {
@PrimaryGeneratedColumn('increment')
id: number;
@Column()
path: string;
@ManyToOne(()=> Orphanage, orphanage => orphanage.images)
@JoinColumn({ name: 'orphanage_id' })
orphanage: Orphanage;
}
有谁知道我该如何解决这个问题?
谢谢!
解决方案
去看看在哪里renderMany()
被调用并确保它被传递了一个数组。此错误表明当它需要一个数组时,您没有向它传递任何东西。
这段代码中唯一有 a 的地方.map()
是 in renderMany()
。因此,如果这就是问题所在,那么我们需要查看您调用的位置renderMany()
并查看传递给它的内容。renderMany()
如果这是错误的根源,那么当它期待一个数组时,它看起来好像没有传递任何东西。
推荐阅读
- angular - src/ 中服务工作者的根范围
- android - 如何使用 JobScheduler 替换自定义广播接收器?
- docker - 无法访问 HAProxy 统计信息页面
- vue.js - Vuetify:v-model 看起来已弃用
- terraform - 将字符串附加到 Terraform 中列表的每个元素
- rest - 无法创建“CLRObject”
- javascript - 在 JavaScript 中,字符串是类似数组的对象吗?
- bash - 在bash脚本中将变量传递给su命令
- javascript - 日期选择器:在下一次选择时休息
- javascript - 在 React js 中集成 Stripe 支付