Skip to content

Commit 963a01c

Browse files
committed
Fix lint errors in Dealers.jsx
1 parent 17a1bde commit 963a01c

File tree

1 file changed

+51
-54
lines changed

1 file changed

+51
-54
lines changed
Lines changed: 51 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,19 @@
1-
import React, { useState, useEffect } from 'react';
1+
import React, { useState, useEffect, useCallback } from 'react';
22
import "./Dealers.css";
33
import "../assets/style.css";
44
import Header from '../Header/Header';
55
import review_icon from "../assets/reviewicon.png"
66

77
const Dealers = () => {
88
const [dealersList, setDealersList] = useState([]);
9-
// let [state, setState] = useState("")
109
let [states, setStates] = useState([])
1110

12-
// let root_url = window.location.origin
1311
let dealer_url ="/djangoapp/get_dealers";
14-
1512
let dealer_url_by_state = "/djangoapp/get_dealers/";
1613

1714
const filterDealers = async (state) => {
18-
dealer_url_by_state = dealer_url_by_state+state;
19-
const res = await fetch(dealer_url_by_state, {
15+
const url = dealer_url_by_state + state;
16+
const res = await fetch(url, {
2017
method: "GET"
2118
});
2219
const retobj = await res.json();
@@ -26,71 +23,71 @@ const Dealers = () => {
2623
}
2724
}
2825

29-
const get_dealers = async ()=>{
26+
const get_dealers = useCallback(async () => {
3027
const res = await fetch(dealer_url, {
3128
method: "GET"
3229
});
3330
const retobj = await res.json();
3431
if(retobj.status === 200) {
3532
let all_dealers = Array.from(retobj.dealers)
36-
let states = [];
37-
all_dealers.forEach((dealer)=>{
38-
states.push(dealer.state)
33+
let statesArr = [];
34+
all_dealers.forEach((dealer) => {
35+
statesArr.push(dealer.state)
3936
});
4037

41-
setStates(Array.from(new Set(states)))
38+
setStates(Array.from(new Set(statesArr)))
4239
setDealersList(all_dealers)
4340
}
44-
}
41+
}, []);
42+
4543
useEffect(() => {
4644
get_dealers();
47-
},[]);
48-
45+
}, [get_dealers]);
4946

50-
let isLoggedIn = sessionStorage.getItem("username") != null ? true : false;
51-
return(
52-
<div>
53-
<Header/>
47+
let isLoggedIn = sessionStorage.getItem("username") != null ? true : false;
48+
return(
49+
<div>
50+
<Header/>
5451

55-
<table className='table'>
56-
<tr>
57-
<th>ID</th>
58-
<th>Dealer Name</th>
59-
<th>City</th>
60-
<th>Address</th>
61-
<th>Zip</th>
62-
<th>
63-
<select name="state" id="state" onChange={(e) => filterDealers(e.target.value)}>
64-
<option value="" selected disabled hidden>State</option>
65-
<option value="All">All States</option>
66-
{states.map(state => (
67-
<option value={state}>{state}</option>
68-
))}
69-
</select>
70-
71-
</th>
72-
{isLoggedIn ? (
73-
<th>Review Dealer</th>
74-
):<></>
75-
}
76-
</tr>
77-
{dealersList.map(dealer => (
52+
<table className='table'>
7853
<tr>
79-
<td>{dealer['id']}</td>
80-
<td><a href={'/dealer/'+dealer['id']}>{dealer['full_name']}</a></td>
81-
<td>{dealer['city']}</td>
82-
<td>{dealer['address']}</td>
83-
<td>{dealer['zip']}</td>
84-
<td>{dealer['state']}</td>
85-
{isLoggedIn ? (
86-
<td><a href={`/postreview/${dealer['id']}`}><img src={review_icon} className="review_icon" alt="Post Review"/></a></td>
54+
<th>ID</th>
55+
<th>Dealer Name</th>
56+
<th>City</th>
57+
<th>Address</th>
58+
<th>Zip</th>
59+
<th>
60+
<select name="state" id="state" onChange={(e) => filterDealers(e.target.value)}>
61+
<option value="" selected disabled hidden>State</option>
62+
<option value="All">All States</option>
63+
{states.map(state => (
64+
<option key={state} value={state}>{state}</option>
65+
))}
66+
</select>
67+
68+
</th>
69+
{isLoggedIn ? (
70+
<th>Review Dealer</th>
8771
):<></>
88-
}
72+
}
8973
</tr>
90-
))}
91-
</table>;
92-
</div>
93-
)
74+
{dealersList.map(dealer => (
75+
<tr key={dealer.id}>
76+
<td>{dealer['id']}</td>
77+
<td><a href={'/dealer/'+dealer['id']}>{dealer['full_name']}</a></td>
78+
<td>{dealer['city']}</td>
79+
<td>{dealer['address']}</td>
80+
<td>{dealer['zip']}</td>
81+
<td>{dealer['state']}</td>
82+
{isLoggedIn ? (
83+
<td><a href={`/postreview/${dealer['id']}`}><img src={review_icon} className="review_icon" alt="Post Review"/></a></td>
84+
):<></>
85+
}
86+
</tr>
87+
))}
88+
</table>
89+
</div>
90+
)
9491
}
9592

9693
export default Dealers

0 commit comments

Comments
 (0)