如何从外部函数访问渲染函数内部的变量

时间:2020-06-30 00:37:17

标签: reactjs react-native render

Hello Stack溢出社区, 我试图弄清楚如何从外部渲染函数访问内部渲染中声明的变量,我不完全了解如何进行此操作,因为我对React-Native非常陌生,我相信解决这一问题将让我很好地了解范围在这种语言中是如何工作的。对于我的项目,我通过this.props访问用户数据,但是,当我尝试将这些数据传递给外部函数时,由于我认为与范围有关,似乎失败了。我将代码简化为重要的部分,当我尝试访问在render中声明的变量指示符时,分页是render()外部的函数,它找不到该变量。我正在从this.props获取用户数据。预先谢谢你!

get pagination () {

length = indicator
}

        render () {
                const { wrap,image, images, auto, button, indicator} = this.props
return(
<View>
{ this.pagination }
</View> 
)}

1 个答案:

答案 0 :(得分:0)

请记住,变量只能在其范围内使用(括号)。由于您是在渲染范围内声明indicator,因此只能在此处访问它。如果您希望pagination可以访问它,则需要将其作为函数参数传递。

例如:

pagination(indicator) {
 // Do something with indicator
 return "Page " + indicator
}

render() {

  const { indictator } = this.props;
  return (<View>
    { this.pagination(indicator) }
  </View>); 

}