Hands-on Practice II
Last updated
Last updated
AppTravel.jsx
React ApplicationOpen your terminal and run the following commands to create and navigate to the project directory:
Open visual studio code and open terminal
Install Bootstrap for styling:
Import Bootstrap in the App.jsx file:
Inside the src
folder, create a new folder named components
.
Add the following files inside the components
folder:
Header.jsx
TravelEntry.jsx
travelData.js
travelData.js
FileAdd the provided travel data as an array of objects. Example:
APP.jsx Layout
TravelEntry.jsx Layout
Header.jsx
ComponentThis component will display a header with a globe icon and a title.
Structure:
Use a div
with Bootstrap classes for a responsive design.
Include a globe icon (use an online icon or Font Awesome).
Example:
Use the d-flex justify-content-center align-items-center
Bootstrap classes for alignment.
Set a background color and padding using Bootstrap utility classes.
TravelEntry.jsx
ComponentThis component will display individual travel entries within an article
container.
Structure:
Use a two-column layout:
Left Column: Display the main image.
Right Column: Include:
Map marker icon, country name, and Google Maps link.
Title, dates, and description text.
Use Bootstrap’s grid system for the layout.
Suggested Bootstrap Classes:
row
for the flex-row layout.
col-md-4
for the image column.
col-md-8
for the content column.
Use spacing utilities like mb-3
, p-2
, etc.
App.jsx
Import Header
, TravelEntry
, and travelData
.
Map over the travelData
array to dynamically render a TravelEntry
component for each item.
Pass the travel entry data as props to TravelEntry
.
Header.jsx:
Add a background color with bg-warning
or a custom class.
Use text alignment utilities (text-center
) for centering the title.
TravelEntry.jsx:
Use the grid system (row
, col
) for layout.
Add spacing with utilities (mt-3
, p-3
, etc.).
Style the map marker and Google Maps link for better visibility.
Save all files and start the development server:
Check the following:
The header appears at the top with a globe icon and title.
Each travel entry is displayed in a two-column layout with the provided data.
The application is styled using Bootstrap.
Adjust column widths using Bootstrap’s responsive grid classes (col-sm
, col-md
, col-lg
) for different screen sizes.
Test the links to ensure that they redirect to Google Maps correctly.
Enhance accessibility by adding alt
attributes to images and meaningful aria-labels
to links.
This procedure ensures you build the application with proper styling using Bootstrap and dynamic rendering using React components. Let me know if you need clarification on any step!