javascript - 如何使用 React 组件中的请求 api 将字符串传递给变量?

标签 javascript node.js reactjs

我不知道如何使用异步调用和 promise 处理来传递结果变量

这是我使用过的代码:

import React from 'react';
import {result} from './run.js';



export default class Films extends React.Component {
  constructor(props){
    super(props)

    this.state = { data: 'constructor' }
    console.log('cons')
  }

componentDidMount() {

   this.setState(async (state, props) => { 
        const value = await result;
        console.log(value);

        console.log('didMount')
        return {data:value}
    });

  }

  render (){
    return (
      <div>
       <center> <h1> Weekend Box Office </h1></center>
        <div className = 'data'>
            <h1>{this.state.data}</h1>
        </div>
      </div>
    );
  }
}

我在组件文件中导入了我的 promise 对象(结果)。我不知道为什么我的promise字符串没有渲染。

最佳答案

你需要使用componentDidMount

componentDidMount is invoked immediately after a component is mounted (inserted into the tree). Initialization that requires DOM nodes should go here

因此您需要在 componentDidMount 内调用您的请求,并且需要将结果设置为组件的状态,以便在回调内您将调用 setState 更新结果,即组件状态

关于javascript - 如何使用 React 组件中的请求 api 将字符串传递给变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58367431/

相关文章:

javascript - 正确捕获 Socket.io 的错误

javascript - 完全禁用父元素的焦点

javascript - Node.js 和 Socket.io - 动态 socket.on()

javascript - 使用 Node 和 React 进行基本文件上传

javascript - 错误 : Expected undefined to be a GraphQL schema

javascript - jQuery:在 div 中平滑滚动 "back to top"?

javascript - 如何使用 execCommand 对齐文本

node.js - NPM update -g 很多警告但成功

node.js - Node js 为 gmail 发送 session /日历邀请

reactjs - TS 'Object possibly null'错误如何解决?