Javascript 如何在render()中没有微调器组件的情况下显示react微调器
我想在react应用程序中显示微调器,而无需在render()中编写一些代码,就像在android本机进度对话框中一样 当前,我将此行添加到渲染()中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({
有可能这样做吗?这样我就不需要在任何地方维护状态 如果您不想到处维护状态,可以让微调器像这样维护自己的状态:
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>
}
}