最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

如何使用我的react组件中的request api将字符串传递到变量中?

IT培训 admin 6浏览 0评论

如何使用我的react组件中的request api将字符串传递到变量中?

我不知道如何使用异步调用和答应处理以使结果变量通过]

这是我玩过的代码:

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对象(结果)导入了我的组件文件。我不知道为什么我的诺言字符串没有显示。

回答如下:

您需要使用componentDidMount

componentDidMount会在安装组件(插入树中)后立即调用。需要DOM节点的初始化应在此处

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

如何使用我的react组件中的request api将字符串传递到变量中?

我不知道如何使用异步调用和答应处理以使结果变量通过]

这是我玩过的代码:

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对象(结果)导入了我的组件文件。我不知道为什么我的诺言字符串没有显示。

回答如下:

您需要使用componentDidMount

componentDidMount会在安装组件(插入树中)后立即调用。需要DOM节点的初始化应在此处

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

发布评论

评论列表 (0)

  1. 暂无评论