• react增删改查


    react增删改查

    import React, { Component } from 'react'
    import axios from 'axios'
    export default class List extends Component {
        constructor() {
            super()
            this.state = {
                list: [],
                username: "",
                age: ""
            }
        }
        componentDidMount() {
            this.find()
        }
        handleChange = e => {
            this.setState({
                [e.target.id]: e.target.value
            })
        }
        find = () => {
            axios.get("http://localhost:3001/list").then(res => {
                this.setState({
                    list: res.data
                })
            })
        }
        add = () => {
            axios.post("http://localhost:3001/list", {
                username: this.state.username,
                age: this.state.age
            }).then(res => {
                this.find()
            })
        }
        del = (id) => {
            axios.delete("http://localhost:3001/list/" + id).then(res => {
                this.find()
            })
        }
        update = (item) => {
            let value =  prompt("请输入修改内容..",item.username+","+item.age)
            if(value){
                var arr = value.split(",")
                //派发 patch请求
                axios.patch("http://localhost:3001/list/"+item.id,{
                    username:arr[0],
                    age:arr[1]
                }).then(res=>{
                    this.find()
                })
            }
        }
        select = () => {
            axios.get("http://localhost:3001/list?username_like=" + this.state.username).then(res => {
                console.log(res)
                this.setState({
                    list: res.data
                })
            })
        }
        render() {
            let { list, username, age } = this.state
            return (
                <div>
                    <label>用户名:<input id="username" value={username} onChange={this.handleChange} placeholder="请输入用户名"></input></label>
                    <label>年龄:<input id="age" value={age} onChange={this.handleChange} placeholder="请输入年龄"></input></label>
                    <button onClick={this.add}>添加</button>
                    <button onClick={this.select}>查询</button>
                    <ul>
                        {
                            list.map((item, index) => {
                                return <li key={index}>{item.username}---{item.age}
                                    <button onClick={this.del.bind(this, item.id)}>删除</button>
                                    <button onClick={this.update.bind(this, item)}>修改</button>
                                </li>
                            })
                        }
                    </ul>
                </div>
            )
        }
    }
  • 相关阅读:
    MFC TeeChart 用法整理二 (画二维图)
    CFileFind类的详解以及应用实例
    error C2065: 'AfxCriticalTerm' : undeclared identifier 解决办法
    error LNK2001
    ShellExecute详细用法(可以单独打开一个文件)
    java连接SQL Server数据库
    Java 异常处理
    eclipse 无法自动匹配
    Java简单的表格模型
    Java 字符串常用操作(String类)
  • 原文地址:https://www.cnblogs.com/cupid10/p/15617628.html
Copyright © 2020-2023  润新知