Javascript React.js error:TypeError:无法读取属性';地图';未定义的
当前正在尝试根据本教程制作MERN Stack web应用程序: 所以我也是个新手,不知道如何解决这个问题。。。 帮助plz TypeError:无法读取未定义的属性“map” 帖子 C:/Users/I/Desktop/memories-pr/client/src/components/Posts/Post/Post.js:27Javascript React.js error:TypeError:无法读取属性';地图';未定义的,javascript,node.js,reactjs,mongodb,mern,Javascript,Node.js,Reactjs,Mongodb,Mern,当前正在尝试根据本教程制作MERN Stack web应用程序: 所以我也是个新手,不知道如何解决这个问题。。。 帮助plz TypeError:无法读取未定义的属性“map” 帖子 C:/Users/I/Desktop/memories-pr/client/src/components/Posts/Post/Post.js:27 24 | </Button> 25 | </div> 26 | <div className={classes.de
24 | </Button>
25 | </div>
26 | <div className={classes.details}>
> 27 | <Typography variant="body2" color="textSecondary" component="h2">{post.tags.map((tag) => `#${tag} `)}</Typography>
| 28 | </div>
29 | <CardContent>
30 | <Typography className={classes.title} variant="h5" gutterBottom > {post.message} </Typography>
这可能是由于异步获取
post
造成的,如果是这种情况,那么最初post
的值将保持未定义,并且您将看到此错误
使用null传播或条件呈现可避免此错误:
<Typography
variant="body2"
color="textSecondary"
component="h2">
{post?.tags?.map((tag) => `#${tag} `)}
</Typography>
{post?.tags?.map((tag)=>`${tag}`)}
我想这意味着post.tags没有定义?您是否尝试过将“post”变量打印到控制台,或在调试器中检查它?基本上是说,您的post.tags
是未定义的。请尝试检查获取的数据是否正确,或者检查您的post
是否具有属性-tags
.post.tags&&post.tags.map((tag)=>${tag}
-添加空检查
<Typography
variant="body2"
color="textSecondary"
component="h2">
{post?.tags?.map((tag) => `#${tag} `)}
</Typography>