我有一个依赖于redux存储的组件。我的redux商店看起来像这样
{
user: {
auth: true,
id: '5a603c58288fc745f8cada9e',
first_name: 'john',
email: 'xyz@abc.com',
company_id: '5a66d8b92cd8e931680778dc',
company_name: 'My Company',
}
}
所以基本上,当我刷新页面时,存储区消失了,需要一些时间来获取数据并将其设置为存储区,如上所述
我有一个组件,它需要company_id来获取有关该公司的数据
componentDidMount(props) {
console.log("idddddddd", this.props.company_id)
// this.props.getCompanyData(this.props.company_id);
}
使用react-redux我得到了company_id
CompanySetupPage.propTypes = {
getCompanyData : PropTypes.func.isRequired,
company_id : PropTypes.string.isRequired
}
function mapStateToProps(state) {
return {
company_id : state.user.company_id
}
}
export default connect(mapStateToProps, {getCompanyData})(CompanySetupPage);
此组件,componentDidMount在存储区接收公司id数据之前被激发。所以我想要的是在这个组件从redux商店获得公司id后调用componentDidMount。
不要使用componentDidMount
lifecycle,而是使用componentWillReceiveProps
lifecycle方法,如下所示
componentWillReceiveProps (nextProps) {
if (this.props.company_id !== nextProps.company_id) {
this.props.getCompanyData(this.props.company_id);
}
}
参考看看这个生命周期方法的留档。文档的组件WillReceiveProps
我想要的是在这个组件从redux商店获得公司id后调用componentDidMount。
最好不要修改何时调用组件生命周期方法。有关组件生命周期方法的更多信息,请参见本参考资料。
安装组件后只触发一次。company_id可能可用,也可能不可用
在您的情况下,调用api调用的更好的函数是componentWillReceiveProps。
componentWillReceiveProps()
在安装的组件接收新的道具之前被调用。安装时,不会调用它。
componentWillReceiveProps (nextProps) {
if (this.props.company_id !== nextProps.company_id) {
this.props.getCompanyData(this.props.company_id);
}
}
我在react native 0.62上工作,我在其中使用了抽屉导航器。当用户登录到应用程序时,我将auth api响应存储到redux存储中。登录后,我想在仪表板头显示登录的用户名,但我无法使用redux存储在我的函数。用钩子试过,但不起作用。任何帮助或建议。提前谢谢你。下面是我的代码: login.reducer.js从'../utility/constants'导入{AUTH_REQUEST
我想修改MongoDB中的文档。以下是相关文档结构的示例摘录: 首先,key包含一个数组数组。我必须搜索嵌套数组中的项(纪元时间,例如)。如何通过嵌套数组值查找文档?例如,我尝试搜索: 诚然,我预计这种方法将通过嵌套数组值进行搜索 其次,如果这个数组值已经存在(纪元时间),我想更新/覆盖嵌套数组中的元素(数据值)。如果数组值在M1数组中不存在,我想将其(以及随附的数据值)添加到M1数组中。 我希望
问题内容: 使用redux更新商店中嵌套数据数组的最佳/正确方法是什么? 我的商店看起来像这样: 我有一对异步操作来更新完整的对象,但是我还有另一对操作要更新特定的数组。 我的减速器当前看起来像这样,但是我不确定这是否是正确的方法: 问题答案: React的不变性帮助器是一种创建普通旧JavaScript对象的更新版本而无需对其进行突变的便捷方法。 您为它提供了要更新的源对象和一个对象,该对象描述
我目前正在使用axios从我的api中提取JSON数据,我正在映射这个数据并将其存储为变量。我希望能够在我的react组件中调用这些变量,但我似乎找不出最好的方法。 获取JSON数据并将其存储为变量 我希望能够在react组件中调用类似Profile.Major的东西,但我目前尝试的方法并不奏效。请让我知道这样做的正确方法。提前谢谢你。
如果df2中不存在数据,我会尝试从df1获取数据,df1中的col1应该与df2中的col3对齐(col2和col4相同)
我目前正在构建一个项目,其中我需要为每个用户保存一个字符串列表(他阅读的文章的网址)。 我正在使用带有sqlite的python烧瓶SQLalchemy。 我知道sqlite不支持数组,所以我正在考虑切换到另一个数据库,而不是sqlite,一个支持数组的数据库。 我想知道你会怎么做?哪个数据库支持数组,或者是否有更好的解决方法。