我是新的Reactjs,我正在使用fetch进行api调用。我想使用其他页面上的api数据来重定向页面,因为我正在使用以下代码
import React, { Component } from 'react';
import OwlCarousel from 'react-owl-carousel';
import 'owl.carousel/dist/assets/owl.carousel.css';
import 'owl.carousel/dist/assets/owl.theme.default.css';
import { Link,Redirect } from 'react-router-dom';
fetchCatList(){
let catID = "5c2f74e8a4d846591b2b1a41";
// fetch("http://sfsdfsdfsdf/api/listing",{
// method: 'POST',
// body: JSON.stringify({
// category_id: catID,
// }),
// headers:{
// 'Content-Type':'application/json',
// },
// })
// .then(res => res.json())
// .then(json => this.setState({catlist:json.data}));
fetch("http://sdfsdfsdf/api/listing", {
method: "post",
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
//make sure to serialize your JSON body
body: JSON.stringify({
category_id: catID,
})
})
.then(function(res){ return res.json(); })
.then(function(response){
//do something awesome that makes the world a better place
console.log(response);
<Redirect to={{
pathname: '/listing_page',
state: { listData: response }
}}/>
});
}
我正在使用Redirect
中的react-router-dom
,但是在调用api之后出现错误
期望了一个赋值或函数调用,而是看到了一个表达式 没有未使用的表达式
搜索关键字以详细了解每个错误。
答案 0 :(得分:0)
在这里,他们提到这是eslint错误,而不是路由器的错误。
引用:https://github.com/ReactTraining/react-router/issues/4718
答案 1 :(得分:0)
要解决您的问题,您需要使用带有返回功能的重定向。
render () {
if(this.state.toListing) {
return <Redirect push to="/listing_page" />
}
return (
...
)
}