什么时候 return fetch() 什么时候只使用 fetch() 请求?

When to return fetch() and when just using fetch() request?

我开始使用 React Native,我一直想知道的一件事是,有时我看到 fetch 是这样使用的:

createTodo(){
   fetch('http://192.168.1.34:3000/createTodo', {
      method: 'POST',
      headers: {
        'Accept': 'application/json',
        'Content-Type': 'application/json',
      },
      body: JSON.stringify({
        content: this.state.noteText,
      }),
   }).then((response) => response.json())
      .then((responseJson) => {
        var d = new Date();
        this.state.noteArray.push({
            'date':d.getFullYear()+
            "/"+(d.getMonth()+1) +
            "/"+ d.getDate(),
            'note': responseJson.data.content
        });
        this.setState({ noteArray: this.state.noteArray });
        this.setState({noteText:''});

        console.log(responseJson);
      }).catch((error) => {
        console.error(error);
        console.log('Shit! Error occured');
      });
}

这个工作很好。

有时是:

return fetch(...)...

我有点懵

fetch 是 Promise,return 是另一个 Promise。已解决的结果传递给下一个 .then 个输入参数。因此,在您的示例代码中,您可以处理由 fetch 函数传递的 response 值。

createTodo 的客户想要使用 createTodo 的 'result' 时,您可以 return 您的 fetch 功能。 'result' 是另一个 Promise,其输入参数来自 createTodo 的 return 值

Demo只是为了展示Promise的return值是另一个Promise。希望你能得到提示。