首页 > 解决方案 > 无法从状态中获取价值 - React

问题描述

嘿,这是我的代码,我想打印 networkType,但它没有打印出这段代码在 App.js 中工作但不在 home.js 中工作的任何内容。

我在 home.js 中创建了一个类组件

主页.js

import {Component, React} from 'react';
import { BrowserRouter as Router, Link } from 'react-router-dom';
import Web3 from 'web3';
class Home extends Component
{
    state={
        person : [
          {networkType:'None'}
        ]
    }
    
    componentDidMount()
    {
        this.loadBlockchainData();
    }
    
    async loadBlockchainData()
    {
        const web3 = new Web3(Web3.givenProvider || "https://localhost:8545");
        const network = await web3.eth.net.getNetworkType();
        this.setState(
            {
                person:[
                    {networkType:network}
                ]
            }
        )
    }
    render()
    {
        return(
            <div>
                <h1>Hello</h1>
                <h1>Network is: {this.state.networkType}</h1>
            </div>
        )
    }
}
export default Home; 

标签: reactjs

解决方案


只需像这样更新:

this.state.person[0].networkType

推荐阅读