【发布时间】:2020-10-04 22:20:37
【问题描述】:
index.js:1 警告:不建议在严格模式下使用 UNSAFE_componentWillReceiveProps,这可能表明您的代码中存在错误。
将数据获取代码或副作用移至 componentDidUpdate。
如果您在 props 更改时更新状态,请重构您的代码以使用记忆技术或将其移至静态 getDerivedStateFromProps。 请更新以下组件:FirestoreConnectWrapped(Details)
这是我的代码
import React from 'react';
import {Card } from 'react-bootstrap';
import {connect} from 'react-redux';
import {firestoreConnect} from 'react-redux-firebase';
import {compose} from 'redux';
const Details =(props)=>{
const {project} =props;
if(project){
return(
<div className="container">
<br/>
<Card>
<Card.Body>
<Card.Title>{project.Title}</Card.Title>
<blockquote className="blockquote mb-0">
<p>
{project.content}
</p>
</blockquote>
<Card.Text>
<small className="text-muted">Last updated 3 mins ago</small>
</Card.Text>
</Card.Body>
</Card>
</div>
)
}
else{
return (
<div className="container">
Loading project......
</div>
)
}
}
const mapStateToProps =(state,ownProps)=>{
const id=ownProps.match.params.id;
const projects =state.firestore.data.projects;
const project =projects ? projects\[id\] :null
return {
project :project
}
}
export default compose(
connect(mapStateToProps),
firestoreConnect(props=>\[
{collection:'projects',doc:props.match.params.id}
\])
)(Details)
【问题讨论】:
-
找到解决方案了吗?
标签: reactjs