Skip to content

Commit e80e6f7

Browse files
committed
Enhance code + Adding finally block to avoid duplicating code
1 parent 00852be commit e80e6f7

File tree

1 file changed

+14
-15
lines changed

1 file changed

+14
-15
lines changed

src/pages/user/UsersList.jsx

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
import Layout from "../../components/layout/Layout";
2-
import UserCard from "../../components/user/UserCard";
3-
import * as userService from "../../services/user.service";
4-
import React, { useEffect, useState } from "react";
5-
import { Col, Row } from "react-bootstrap";
6-
import { List } from "react-content-loader";
1+
import Layout from '../../components/layout/Layout';
2+
import UserCard from '../../components/user/UserCard';
3+
import * as userService from '../../services/user.service';
4+
import React, { useEffect, useState } from 'react';
5+
import { Col, Row } from 'react-bootstrap';
6+
import { List } from 'react-content-loader';
77

88
const UsersList = () => {
99
const [users, setUsers] = useState({}); // Important, default need to be empty object
@@ -16,17 +16,16 @@ const UsersList = () => {
1616

1717
const users = await userService.retrieveAllUsers();
1818
setUsers(users);
19-
setIsLoading(false);
2019
} catch (error) {
2120
const retrieveErrorMessage = () => {
2221
const apiErrorMessage = error?.response?.data?.message;
2322

2423
// Null Coalescing Operator
25-
return apiErrorMessage ?? "Error while connecting to the server";
24+
return apiErrorMessage ?? 'Error while connecting to the server';
2625
};
27-
28-
setIsLoading(false); // Stop loader if we receive error msg
2926
setErrorMessage(retrieveErrorMessage());
27+
} finally {
28+
setIsLoading(false); // At this stage, we can stop the loader
3029
}
3130
};
3231

@@ -37,17 +36,17 @@ const UsersList = () => {
3736
return (
3837
<Layout>
3938
{isLoading ? (
40-
<div className="text-center">
39+
<div className='text-center'>
4140
<List />
4241
</div>
4342
) : errorMessage ? (
44-
<h3 className="text-center text-danger fw-bold">{errorMessage}</h3>
43+
<h3 className='text-center text-danger fw-bold'>{errorMessage}</h3>
4544
) : (
4645
<>
47-
<h4 className="text-center mb-3">Users</h4>
48-
<Row className="justify-content-center">
46+
<h4 className='text-center mb-3'>Users</h4>
47+
<Row className='justify-content-center'>
4948
{Object.values(users).map((user) => (
50-
<Col key={user.id} lg={4} className="p-1">
49+
<Col key={user.id} lg={4} className='p-1'>
5150
<UserCard user={user} />
5251
</Col>
5352
))}

0 commit comments

Comments
 (0)