Javascript 如何在render()中没有微调器组件的情况下显示react微调器

Javascript 如何在render()中没有微调器组件的情况下显示react微调器,javascript,android,react-native,Javascript,Android,React Native,我想在react应用程序中显示微调器,而无需在render()中编写一些代码,就像在android本机进度对话框中一样 当前,我将此行添加到渲染()中 有可能这样做吗?这样我就不需要在任何地方维护状态 如果您不想到处维护状态,可以让微调器像这样维护自己的状态: class Spinner extends Component { show () { this.setState({ visible: true }) } hide () { this.setState({

我想在react应用程序中显示微调器,而无需在render()中编写一些代码,就像在android本机进度对话框中一样

当前,我将此行添加到渲染()中


有可能这样做吗?这样我就不需要在任何地方维护状态

如果您不想到处维护状态,可以让微调器像这样维护自己的状态:

class Spinner extends Component {
  show () {
    this.setState({ visible: true })
  }
  hide () {
    this.setState({ visible: false })
  }
}
并在根视图中添加一个
微调器

export const spinner = React.createRef()

class MyApp extends Component {
  render () {
    return (
      <View>
        {/* your app content */}
        <Spinner ref={spinner} />
      </View>
  }
}
export const spinner=React.createRef()
类MyApp扩展组件{
渲染(){
返回(
{/*您的应用程序内容*/}
}
}

如果要显示微调器,只需从“/MyApp.js”导入{spinner}并调用
spinner.show()

你在用expo做什么?不,我没有用expoSorry,再次阅读帖子,看到
从任何地方调用java android。
但是如果你需要,我可以为expo提供解决方案。我对react native没有很好的经验,所以我现在无法将我的项目转换为expo项目。但我希望看到解决方案。请st an Answer是的,这比在任何地方设置状态都好。但我仍然必须在每个视图组件中都包含它。但这听起来更好。我会检查它,然后再与您联系。如果您想要的是单个全局微调器覆盖,只需将其添加到根视图一次。
class Spinner extends Component {
  show () {
    this.setState({ visible: true })
  }
  hide () {
    this.setState({ visible: false })
  }
}
export const spinner = React.createRef()

class MyApp extends Component {
  render () {
    return (
      <View>
        {/* your app content */}
        <Spinner ref={spinner} />
      </View>
  }
}