Deleting Data trong ReactJS
Trong bài tập này, mình sẽ thêm tính năng xóa người dùng khỏi danh sách thông qua giao diện của mình và gửi yêu cầu DELETE tới API để xóa người dùng tương ứng.
Mình sẽ tiếp tục phát triển ứng dụng của mình bằng cách tạo một chức năng cho phép người dùng xóa người dùng từ danh sách.
Bước 1: Tạo Component UserList
Trong component UserList, mình sẽ thêm một nút xóa cho mỗi người dùng trong danh sách. Khi người dùng nhấp vào nút này, mình sẽ gửi yêu cầu DELETE tới API để xóa người dùng tương ứng.
// src/components/UserList.js import React, { useState, useEffect } from 'react'; import axios from 'axios'; const UserList = () => { const [users, setUsers] = useState([]); const [error, setError] = useState(null); useEffect(() => { const fetchUsers = async () => { try { const response = await axios.get('https://jsonplaceholder.typicode.com/users'); setUsers(response.data); } catch (error) { setError(error.message); } }; fetchUsers(); }, []); const handleDeleteUser = async userId => { try { await axios.delete(`https://jsonplaceholder.typicode.com/users/${userId}`); setUsers(users.filter(user => user.id !== userId)); alert('User deleted successfully!'); } catch (error) { console.error('Error deleting user:', error); alert('Failed to delete user. Please try again.'); } }; if (error) { return <div>Error: {error}</div>; } return ( <div> <h1>User List</h1> <ul> {users.map(user => ( <li key={user.id}> {user.name} - {user.email} <button onClick={() => handleDeleteUser(user.id)}>Delete</button> </li> ))} </ul> </div> ); }; export default UserList;
Bước 2: Import và sử dụng Component UserList
Import component UserList
vào trong App.js và sử dụng nó trong ứng dụng của bạn.
// src/App.js import React from 'react'; import UserList from './components/UserList'; import './App.css'; function App() { return ( <div className="App"> <UserList /> </div> ); } export default App;
Kết quả:
Khi người dùng nhấp vào nút "Delete" bên cạnh mỗi người dùng trong danh sách, người dùng đó sẽ bị xóa khỏi danh sách. Sau khi xóa thành công, người dùng sẽ không còn xuất hiện trong danh sách nữa.
Kết bài
Trong bài tập này, mình đã thêm tính năng xóa người dùng khỏi danh sách thông qua giao diện của mình và gửi yêu cầu DELETE tới API để xóa người dùng tương ứng. Điều này cung cấp cho người dùng khả năng quản lý danh sách người dùng một cách linh hoạt và đơn giản hơn.
Bài giải
-------------------- ######## --------------------
Câu hỏi thường gặp liên quan:
- Fetching Data from API trong ReactJS
- Displaying Details trong ReactJS
- Searching Data trong ReactJS
- Pagination trong ReactJS
- Loading Indicator trong ReactJS
- Error Handling trong ReactJS
- Form Submission trong ReactJS
- Authentication trong ReactJS
- Deleting Data trong ReactJS
- File Upload trong ReactJS
- Real-time Updates trong ReactJS
- External APIs Integration trong ReactJS
- Rate Limiting và Throttling trong ReactJS