[英]Cannot pass mongo/express data to react
我試圖通過mongodb / express傳遞我的數據,以使用componentDidMount()
生命周期函數做出反應,但是由於某些原因,它不起作用,而是給了我這個"Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0"
錯誤。
這是我設置快遞的方式:
app.get('/movies', function(req, res){
movie.find({}, function(err, allMovies){
if(err){
console.log(err);
} else {
res.send(allMovies);
}
})
});
app.listen(3000, function(){
console.log('App server is listening to 3000');
});
在我的反應文件中,我調用componentDidMount函數,該函數通過webpack在端口8080上運行。
componentDidMount() {
console.log('test')
fetch('/movies')
.then(response => response.json())
.then(movies => this.setState({
movies: movies
}));
}
當我console.log響應時,它返回此https://prnt.sc/iye6kk 。
知道我在做什么錯為什么我的數據不能正確傳遞嗎?
在componentDidMount
,腳本正在解析對JSON的響應。
.then(response => response.json())
但是服務器未以JSON格式發送響應。
以json格式發送。
res.json({allMovies}); //ecma6 shorthand property names
要么
res.json({allMovies : allMovies});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.