不过,我面临的问题是,我想在整个组件树状结构中模仿 React 中 FlaskLogin current_user 的行为。对于不熟悉 FlaskLogin 的任何人,current_user只需存储当前登录用户的会话。
为此,我决定使用 React 上下文 api。我所做的是在顶级组件中,我将一个 UserProvider 包裹在应用程序周围,如下所示:
<UserProvider value={this.state.user}>
// Main Component.
</UserProvider>
Run Code Online (Sandbox Code Playgroud)
状态在构造函数中定义:
constructor() {
super();
this.state = {
user: {
id: -1,
username: ‘test username’,
email: 'test email’,
},
};
}
Run Code Online (Sandbox Code Playgroud)
然后我在 componentDidMount 中调用一个 Ajax 请求来获取 current_user。
componentDidMount() {
const state = this;
post('/get_current_user').then(function success(data) {
state.setState({
user: {
id: data.data.id,
username: data.data.username,
email: data.data.email,
},
});
}).catch(function exception() {
throw new Error('Failed to grab current user.');
});
} …Run Code Online (Sandbox Code Playgroud) 现在,我想知道select2和select2 full之间的完全区别是什么。我在文档中找不到一个详细介绍它们的网页。这些文档只提到了兼容性模块和mousewheel插件,但是dropdownCssClass也有新的配置选项,因此我感到有些困惑。我打算采用它来使用dropdownCssClass config选项,但是我想知道我还能从中得到什么。我也很好奇select2 full是否像select2一样得到积极维护,但也找不到关于它的信息