【发布时间】:2019-07-10 08:15:35
【问题描述】:
我正在使用react-native 和react-native-paper 构建移动应用程序。
而我在react-native-paper中使用SnackBar组件,如果我直接使用SnackBar组件,onDismiss在SnackBar组件中的函数效果很好。 (表示snackbar会正确消失)
但如果我使用我的原始组件(如SnackBarComponent 组件),它使用SnackBar 提供的react-native-paper 组件,不知何故,小吃栏不会正确消失。
这是我的自定义 SnackBar 组件和调用我原来的 SnackBar 组件的代码。
- 我原来的 SnackBar 组件
import React, { Component } from 'react';
import { Text } from 'react-native';
import { Provider, Snackbar } from 'react-native-paper';
export default class SnackBarComponent extends Component {
constructor(props) {
super(props);
this.state = {
snackbarVisible: false
}
}
render() {
return(
<Provider>
<Snackbar
visible={this.props.snackbarVisible}
onDismiss={() => this.setState({ snackbarVisible: false })}
>
<Text>{this.props.snackbarText}</Text>
</Snackbar>
</Provider>
)
}
}
- 调用 SnackBarComponent 的代码(这不是完整的代码)
import SnackBarComponent from './components/SnackBarComponent';
:
handleShowSnackbar() {
this.setState({
snackbarVisible: true,
snackbarText: 'show snackbar'
})
}
:
<SnackBarComponent snackbarVisible={this.state.snackbarVisible} snackbarText={this.state.snackbarText}/>
:
【问题讨论】:
标签: react-native react-native-paper