I have products.json in which I have data. Now, I wish to render it using Reactjs.
products.json
[ { "id": 1, "productName": "Fjallraven - Foldsack No. 1 Backpack, Fits 15 Laptops", "price": 109.95, "description": "Your perfect pack for everyday use and walks in the forest. Stash your laptop (up to 15 inches) in the padded sleeve, your everyday", "category": "men's clothing", "image": "https://fakestoreapi.com/img/81fPKd-2AYL._AC_SL1500_.jpg", "specification": {} }, { "id": 2, "productName": "Mens Casual Premium Slim Fit T-Shirts ", "price": 22.3, "description": "Slim-fitting style, contrast raglan long sleeve, three-button henley placket, light weight & soft fabric for breathable and comfortable wearing. And Solid stitched shirts with round neck made for durability and a great fit for casual fashion wear and diehard baseball fans. The Henley style round neckline includes a three-button placket.", "category": "men's clothing", "image": "https://fakestoreapi.com/img/71-3HjGNDUL._AC_SY879._SX._UX._SY._UY_.jpg", "specification": {} } ]
app.js
function App(){ return( ) }
I want the json data to be rendered through app.js.
My Take On:
I’m new to Reactjs and JSON and was thinking of using fetch, response but I’m not sure how can I do it.
Can someone please help?
Advertisement
Answer
First you have to put your data in variable For example:
const data = [ { "id": 1, "productName": "Fjallraven - Foldsack No. 1 Backpack, Fits 15 Laptops", "price": 109.95, "description": "Your perfect pack for everyday use and walks in the forest. Stash your laptop (up to 15 inches) in the padded sleeve, your everyday", "category": "men's clothing", "image": "https://fakestoreapi.com/img/81fPKd-2AYL._AC_SL1500_.jpg", "specification": {} }, { "id": 2, "productName": "Mens Casual Premium Slim Fit T-Shirts ", "price": 22.3, "description": "Slim-fitting style, contrast raglan long sleeve, three-button henley placket, light weight & soft fabric for breathable and comfortable wearing. And Solid stitched shirts with round neck made for durability and a great fit for casual fashion wear and diehard baseball fans. The Henley style round neckline includes a three-button placket.", "category": "men's clothing", "image": "https://fakestoreapi.com/img/71-3HjGNDUL._AC_SY879._SX._UX._SY._UY_.jpg", "specification": {} } ]
The you have to map through your array Like this
function App(){ return ( <div> {data.map((d) => ( <div key={d.id}> <p>ID: {d.id}</p> <p>Product Name: {d.productName}</p> <p>Price: {d.price}</p> <p>Description: {d.description}</p> <p>Category: {d.category}</p> <p> Image: <img src={d.image} width="100" /> </p> <br /> <br /> </div> ))} </div> ); }
Then you can add CSS to make it look better!