-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
render函数内 if + map 或者 三元 + map,渲染不出数据! #1209
Comments
欢迎提交 Issue~ 如果你提交的是 bug 报告,请务必遵循 Issue 模板的规范,尽量用简洁的语言描述你的问题,最好能提供一个稳定简单的复现。🙏🙏🙏 如果你的信息提供过于模糊或不足,或者已经其他 issue 已经存在相关内容,你的 issue 有可能会被关闭。 Good luck and happy coding~ |
CC @yuche |
另外,直接在 render 的 return 里面写以下代码是可以正常渲染数据的,加了 三元 或者 if 就不行 [{id: 1,title: '标题'}].map(photo=><View key={photo.id}>{photo.title}</View>) |
const recommendPhotos = recommends.get('photos');
if (recommends) {
recommendsPanel = recommendPhotos.map((photo, i) => {
return <View key={i}>{photo.title}</View>;
});
// recommendsPanel = <Text>加载好了</Text>
} else {
recommendsPanel = <View>加载中...</View>
} 这样应该可行,原来的问题在于 photos 这个变量和 0383991 会在你这样写的时候报错,下个版本发布。 |
@yuche 知道啦,谢谢~ |
还是先打开,现在如果: if (recommends) {
recommendsPanel = recommends.get('photos').map((photo, i) => {
return <View key={i}>{photo.title}</View>;
});
// recommendsPanel = <Text>加载好了</Text>
} else {
recommendsPanel = '加载中...'
} 这样写会报错。 |
对,我刚才也在想这个问题,因为这样跟命名冲突没关系,也会报错。 |
341101a 修复了这个问题,你得等下个版本。 |
问题描述
加了if之后的map输出不生效,具体的看代码和截图。直接在 return 里面使用三元运算符也一样。
复现步骤
代码中的 photos 的值大概如下
期望行为
正常 map 出对应数据
报错信息
这种写法不报错,就是 recommendPanel 一直是 null
系统信息
补充信息
[根据你的调查研究,出现这个问题的原因可能在哪里?]
The text was updated successfully, but these errors were encountered: