更改另一个组件中的状态

vemund

我正在尝试获取heartIconColor要在我的子组件中使用的变量但我收到一个错误。我怎样才能让这个变量成为图标的颜色?

参考错误:找不到变量:heartIconColor

我的 app.js

export default class Home extends Component {
  constructor(props){
    super(props);
    this.state = {
      liked: false
    }
  }
  likePost = (author, id) => {
    alert("Liked!!" + author + id)
    this.liked()
  }
  liked(){
    this.setState({
      liked: !this.state.liked
    })
  }
  renderItem = ({ item, index }) => {
    return (
      <Post
        like={this.likePost} 
        liked={this.state.liked}
      />
    )
  }
  render() {
    const heartIconColor = this.state.liked ? "red" : null;
    return (
     <FlatList data={this.state.getData} renderItem={this.renderItem}>
     </FlatList>
    )
  }

我的组件:

const Post = (props) => {
const styles = StyleSheet.create({
heartIcon: {
      fontSize: 20,
      color: heartIconColor,
    }
})
return (
<View style={styles.flex}>
          <Text><Icon onPress={() => onClick={this.props.like}} style={styles.heartIcon} type="Octicons" name="heart" /></Text>
</View>
)
}
export { Post };
不列颠瓦迪亚

您可以将图标颜色设为

const styles = StyleSheet.create({
heartIcon: {
      fontSize: 20,
      color: props.liked ? "red" : null,
    }
})

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从另一个文件中的另一个组件更改一个组件的状态

从另一个组件更改组件状态

如何在React Native中从另一个功能组件更改一个功能组件的状态?

我的按钮无法更改另一个React Native组件中的状态

从另一个组件更改React Native App.js中的状态

访问ReactJS中另一个组件的状态?

在 reactjs 的另一个组件中渲染状态

如何更改一个组件中的状态并在另一个 Vue.js 中监听它?

React - 从一个包更新另一个组件的状态更改

如何在React中从另一个组件设置一个组件的状态

REACTJS:在另一个类中更改状态

在React-native中将一个组件的状态更改为另一个组件的状态

React-如何从另一个组件更改组件内的状态?

如何使用litElement获得另一个组件的组件状态更改?

根据另一个组件的状态更改React组件可见性

如何从另一个组件更改组件状态?

更改另一个组件/反应图标中的一个组件

在反应组件中,一旦使用 redux 从另一个组件更改状态,如何从状态中获取最新数据?

从另一个组件更新组件的状态

在React中,父对象如何以编程方式更改另一个组件上的prop或状态值?

如何根据另一个组件的状态更改 css 属性

React Hooks:如何避免在另一个状态更改时重新渲染组件?

在 React 中从另一个组件更新组件的状态

React 组件可以渲染存储在其状态中的另一个组件吗?

如何在REACT中从另一个同级或导入的组件更新同级组件的状态

在ReactJS中从另一个组件更新组件的状态

当另一个组件的子组件的状态在 react 中改变时触发事件

在另一个函数中创建一个函数以更改状态

我可以从组件返回值以从另一个组件更改组件状态吗?