如何在列表项中有条件地更改 rightIcon。我正在使用 react-native 元素
How to change rightIcon conditionally in List Item. I am using react-native elements
我是 react-native 的新手,我正在使用 react-native 元素库。我尝试在 rightIcon 中调用如下函数,但它没有呈现 rightIcon
renderItem = ({item}) => (
console.log('renderItem', item),
(
<ListItem
title={item.name}
subtitle={<Text style={{color: 'red'}}>{item.subtitle}</Text>}
leftIcon={<Image source={item.avatar_url} />}
rightIcon={
// name: 'ios-arrow-forward',
// type: 'ionicon',
() => this.changeIcon(item)
}
onPress={this.navigateToScreen(item.route)}
/>
)
);
changeIcon = item => {
console.log('changeItem', item);
if (item.subtitle != 'Completed')
return <Image source={require('../../../assets/icons/menu.png')} />;
};
() => this.changeIcon(item)
returns 函数引用,但 ListItem
需要一个组件。
尝试
rightIcon={this.changeIcon(item)}
我是 react-native 的新手,我正在使用 react-native 元素库。我尝试在 rightIcon 中调用如下函数,但它没有呈现 rightIcon
renderItem = ({item}) => (
console.log('renderItem', item),
(
<ListItem
title={item.name}
subtitle={<Text style={{color: 'red'}}>{item.subtitle}</Text>}
leftIcon={<Image source={item.avatar_url} />}
rightIcon={
// name: 'ios-arrow-forward',
// type: 'ionicon',
() => this.changeIcon(item)
}
onPress={this.navigateToScreen(item.route)}
/>
)
);
changeIcon = item => {
console.log('changeItem', item);
if (item.subtitle != 'Completed')
return <Image source={require('../../../assets/icons/menu.png')} />;
};
() => this.changeIcon(item)
returns 函数引用,但 ListItem
需要一个组件。
尝试
rightIcon={this.changeIcon(item)}