簡體   English   中英

無法傳遞mongo / express數據作出反應

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM