2

我正在调用一个返回一些 html 代码的函数。

但是如果我想给这个函数发送一个参数,那么它告诉我Functions 作为 React child 无效,问题是我想从函数中访问道具,为了做到这一点,我改变了调用jsx 为:

... ...
{this.showActivitiesIcon.bind(this)}
... ...

我尝试在组件内部设置状态,并从 componentDidMount 设置状态

    componentDidMount = () => {
        this.setState({
            currentCountry: this.props.country
        })
    }

但是,在里面componentDidMount,并没有,在构造函数里面this.props.country设置也没用。this.componentDidMount.bind(this)我能做些什么来修复它?

4

3 回答 3

0

这是正确的语法,因为bind(thisArg)返回一个函数:

{this.showActivitiesIcon.bind(this)()}
于 2021-02-20T18:57:32.780 回答
0

你看起来像:

super(props)

你能分享这个组件的整个代码吗?

于 2021-02-20T18:53:37.063 回答
0

似乎您没有在 JSX 中调用该函数。

确保在使用它时调用它,以便它返回有效的 JSX。

this.showActivitiesIcon.bind(this)()
于 2021-02-20T19:34:24.627 回答