@chiriwu-wjx/code-stats-loader
Version:
Webpack loader for code statistics analysis
72 lines • 2.31 kB
JavaScript
// 这是一个示例文件,用于演示代码统计loader的功能
Object.defineProperty(exports, "__esModule", { value: true });
exports.UserService = void 0;
exports.useUsers = useUsers;
const react_1 = require("react");
class UserService {
constructor() {
this.users = [];
this.users = [
{ id: 1, name: "John Doe", email: "john@example.com", age: 30 },
{ id: 2, name: "Jane Smith", email: "jane@example.com", age: 25 },
{ id: 3, name: "Bob Johnson", email: "bob@example.com", age: 35 }
];
}
async getUsers() {
// 模拟API调用
return new Promise((resolve) => {
setTimeout(() => {
resolve(this.users);
}, 1000);
});
}
async getUserById(id) {
const users = await this.getUsers();
return users.find((user) => user.id === id);
}
async createUser(user) {
const newUser = {
...user,
id: Math.max(...this.users.map((u) => u.id)) + 1
};
this.users.push(newUser);
return newUser;
}
}
exports.UserService = UserService;
function useUsers() {
const [users, setUsers] = (0, react_1.useState)([]);
const [loading, setLoading] = (0, react_1.useState)(true);
const [error, setError] = (0, react_1.useState)(null);
const userService = new UserService();
(0, react_1.useEffect)(() => {
const fetchUsers = async () => {
try {
setLoading(true);
const data = await userService.getUsers();
setUsers(data);
}
catch (err) {
setError(err instanceof Error ? err.message : "Unknown error");
}
finally {
setLoading(false);
}
};
fetchUsers();
}, []);
const addUser = async (user) => {
try {
const newUser = await userService.createUser(user);
setUsers((prev) => [...prev, newUser]);
return newUser;
}
catch (err) {
setError(err instanceof Error ? err.message : "Failed to add user");
throw err;
}
};
return { users, loading, error, addUser };
}
//# sourceMappingURL=example.js.map
;