Image 如何在React本机组件中有条件地包含图像?
我可以将静态图像添加到Image 如何在React本机组件中有条件地包含图像?,image,reactjs,react-native,Image,Reactjs,React Native,我可以将静态图像添加到列表视图单元格中,但如何动态更改图标图像 从 然后在renderCell方法中,它被传递到上面的单元格对象: renderCell(cell) { if (cell.type === 'ExpandingCell') { return ( <ExpandingCell cell={cell} /> ); } } 但是,当我尝试使用this.props.cell.icon时,如下所示: var
列表视图
单元格中,但如何动态更改图标图像
从
然后在renderCell
方法中,它被传递到上面的单元格对象:
renderCell(cell) {
if (cell.type === 'ExpandingCell') {
return (
<ExpandingCell cell={cell} />
);
}
}
但是,当我尝试使用this.props.cell.icon
时,如下所示:
var LIST_DATA = [
...
{type: 'ExpandingCell',
icon: './CellIcons/MagnifyingGlassIcon.png', //unused
title: 'Lorem Ipsum',
detail: 'Donec id elit non mi porta gravida at eget metus.'},
...
];
<Image source={require(this.props.cell.icon)}></Image>
我得到以下错误:需要未知模块“/CellIcons/放大镜图标.png”
提前感谢=)包装时必须知道图像。报纸上有一节是关于它的 将其放在定义ExpandingCell的文件顶部:
const MAGNIFYING_GLASS_ICON = require('./CellIcons/MagnifyingGlassIcon.png');
然后你可以像这样使用常数
let icon = someCondition ? MAGNIFYING_GLASS_ICON : SOME_OTHER_ICON;
<Image source={icon}/>
let icon=someCondition?放大镜图标:一些其他图标;
你必须对所有你想以这种方式使用的图像都有要求。我更仔细地阅读了eh文档,我想我对静态图像的要求太高了哈哈。我喜欢你上面提出的
const
解决方案,干杯!
const MAGNIFYING_GLASS_ICON = require('./CellIcons/MagnifyingGlassIcon.png');
let icon = someCondition ? MAGNIFYING_GLASS_ICON : SOME_OTHER_ICON;
<Image source={icon}/>