React-Native:获取props.children的尺寸

时间:2019-01-28 15:36:09

标签: javascript reactjs react-native

我正在尝试为React-Native建立一个库,但我有一个不寻常的要求。我不知道它是否可行。

我必须构建一个包装器组件,

<Container showContent={true}>
  <Text>hello</Text>
</Container>

在Container中,就像这样

render() {
  <View>
    {this.props.children}
  </View>
}

问题是,这将是条件渲染。我知道我可以通过使用容器组件内部的父<View>组件来获得子项的尺寸。

但是我不能,为什么?因为我想在不渲染的情况下进行测量。 就像

render() {
  if(this.props.showContent) {
    return this.props.children;
  }
  return <SomeOtherView />
}

最初是SomeOtherView,在此阶段,我需要子组件的高度和宽度。 我在构建库时,不想传递所有方法。所以我想要一种优雅的方式。我只希望用户使用我的组件,就像它包含在第一个代码片段中一样,在组件内部,即使不渲染它,我也应该获得子代的高度和宽度。

我不知道是否可能。 我试图查看props.children提供的所有方法,但是找不到我可以使用的任何方法。

0 个答案:

没有答案