我正在执行响应,并且在api / cmsview中没有得到Axios正在传递的对象。
class CmsView extends Component {
constructor(props) {
super(props)
this.state = {
cmsObj: [],
packageLid : props.location.state
}
var packageLid = this.props.location.state.packageLid
console.log(packageLid.PACKAGE_LID) //this gets populated with data
Axios.get('/api/cmsview', {packageLid})
.then((response) => {
this.setState({ cmsObj: response.data })
})
}
}
我的packageLid
确实填充了数据,但是当我执行Axios时会得到:
在我的cmsview.js中
router.get('/', (req, res, next) => {
console.log(req.body.packageLid.PACKAGE_LID)
}
我的req.body.packageLid
未填充。知道为什么吗?它只是输出“未定义”
答案 0 :(得分:0)
您需要将axios调用放在componentDidMount方法中。
componentDidMount() {
var packageLid = this.props.location.state.packageLid
console.log(packageLid.PACKAGE_LID) //this gets populated with data
Axios.get('/api/cmsview', {packageLid})
.then((response) => {
this.setState({ cmsObj: response.data })
})
}
}