所以我有一个全栈React应用程序,这种类型的代码我有数据库上的数据。我可以通过 Axios Get 访问该集合,但无法通过 Put 访问此数据来更新它,它是一个余额信用帐户,每次客户购买管理员接受订单的东西时,该余额都会减少该金额,我会发布一些图片,以便任何人都可以理解我要解释的内容,。
如何解决这个问题?
我期待 Put Request 发挥作用。
除非你的截图不完整,否则函数体中似乎没有定义
_id
。您似乎忘记将 _id
作为参数传递到函数中。
您好,我会将所有代码发送给您。谢谢您的回复。
import React, { useEffect, useState } from "react";
import { Container, Nav, Tab, Col, Row } from "react-bootstrap";
import ClientsAdminPage from "../components/ClientsAdminPage";
import DashboardProducts from "../components/DashboardProducts";
import OrdersAdminPage from "../components/OrdersAdminPage";
import {FcMoneyTransfer} from 'react-icons/fc';
import {useSelector, useDispatch } from "react-redux";
import CreditBalancePage from "../pages/CreditBalancePage";
import { Link } from "react-router-dom";
import axios from "../axios";
function AdminDashboard() {
const [balance, setBalance] = useState([]);
const _id = balance._id;
useEffect(()=>{
axios.get('http://localhost:8080/balances').then(balance => setBalance(balance.data[0]))
.catch(error => console.log(error));
},[]);
function updateBalance() {
axios.put(`http://localhost:8080/balances/:id`,{param:{id : _id , total : 123}}).then((res) => console.log(res.data[0]["total"])).catch((err)=> console.log(err));
// let result = async() =>{
// let promiseResult = await dataBalance();
// console.log(promiseResult);
// }
// console.log("dataBalance",dataBalance);
// result();
}
return (
<Container>
<Tab.Container defaultActiveKey="products">
<Row>
<Col sm={3}>
<Nav variant="pills" className="flex-column">
<Nav.Item>
<Link to="/balance" className="balance"
><FcMoneyTransfer/> {console.log(balance)} {balance.total} DZD</Link>
<button onClick={updateBalance}>btn</button>
</Nav.Item>
<Nav.Item>
<Nav.Link eventKey="products">Produits</Nav.Link>
</Nav.Item>
<Nav.Item>
<Nav.Link eventKey="orders">Commandes</Nav.Link>
</Nav.Item>
<Nav.Item>
<Nav.Link eventKey="clients">Commercants</Nav.Link>
</Nav.Item>
</Nav>
</Col>
<Col sm={9}>
<Tab.Content>
<Tab.Pane eventKey="products">
<DashboardProducts />
</Tab.Pane>
<Tab.Pane eventKey="orders">
<OrdersAdminPage />
</Tab.Pane>
<Tab.Pane eventKey="clients">
<ClientsAdminPage />
</Tab.Pane>
</Tab.Content>
</Col>
</Row>
</Tab.Container>
</Container>
);
}
export default AdminDashboard;