首页 > 解决方案 > 我正在尝试显示数据库表中的一组值。我得到了这些值但无法显示它

问题描述

import React,{Component} from 'react'
import axios from 'axios'
const url ="http://localhost:80/form/api/request.php"
class User extends Component{
    constructor(){
        super();
        this.state={
            user:[]
        }
    }
    handle(){
        axios.get(url)
        .then(result=>{
            this.setState({user:result.data})
            console.log(result.data);
        });
    }
    render(){
        let {user}=this.state.user;
        return(
            <div>
                <button onClick={e=>this.handle(e)}>Get</button>
                {
                user && user.map(users=>{
                    return(
                        <div>
                            <h3>name:{users}</h3>
                        </div>
                    )
                })
                
    }
            </div>
        )
    }
}
export default User;

1.在这里点击按钮我得到控制台上的值

2. 仅此而已 map() 没有显示任何值

  1. 'get' 只返回单列值

标签: javascriptreactjs

解决方案


在代码片段中,您共享的状态对象解构不正确。你需要使用let {user} = this.state. 由于用户未定义,因此未显示任何值。


推荐阅读