📘 Premium Read: Access my best content on Medium member-only articles — deep dives into Java, Spring Boot, Microservices, backend architecture, interview preparation, career advice, and industry-standard best practices.
🎓 Top 15 Udemy Courses (80-90% Discount): My Udemy Courses - Ramesh Fadatare — All my Udemy courses are real-time and project oriented courses.
▶️ Subscribe to My YouTube Channel (176K+ subscribers): Java Guides on YouTube
▶️ For AI, ChatGPT, Web, Tech, and Generative AI, subscribe to another channel: Ramesh Fadatare on YouTube
In this chapter, we will learn what is props ( shorthand for properties) and how to use props to pass data from one component to another component.
What are props?
const element = <Welcome name="Ramesh" />;
class Person extends React.Component {
render() {
return <h2>I am a {this.props.name}!</h2>;
}
}
React Props Example 1
App Component
import React, { Component } from 'react'
import './App.css'
import Greet from './components/Greet'
class App extends Component {
render() {
return (
<div className="App">
<Greet name="Bruce" heroName="Batman">
<p>This is children props</p>
</Greet>
<Greet name="Clark" heroName="Superman">
<button>Action</button>
</Greet>
<Greet name="Diana" heroName="Wonder Woman" />
</div>
)
}
}
export default App
Greet Component
import React from 'react'
const Greet = props => {
return (
<div>
<h1>
Hello {props.name} a.k.a {props.heroName}
</h1>
{props.children}
</div>
)
}
React Props Example 2
PropsDemo.js
import React, { Component } from 'react'
import Table from './Table';
export default class PropsDemo extends Component {
render() {
let employeesData = [{
"name": "Ramesh",
"role": "Software Developer"
},{
"name": "Tony",
"role": "Software Developer"
},
{
"name": "Pramod",
"role": "Software Developer"
},{
"name": "Santosh",
"role": "QA Engineer"
}];
return (
<div>
<Table employeesData = {employeesData}/>
</div>
)
}
}
return (
<div>
<Table employeesData = {employeesData}/>
</div>
)
ableHeader.js
import React, { Component } from 'react'
export default class TableHeader extends Component {
render() {
return (
<thead>
<th> Employee Name </th>
<th> Employee Role </th>
</thead>
)
}
}
import React, { Component } from 'react'
import TableHeader from './TableHeader';
import TableBody from './TableBody';
export default class Table extends Component {
render() {
const { employeesData } = this.props;
return (
<div>
<table border = "1">
<TableHeader />
<TableBody employeesData = {employeesData} />
</table>
</div>
)
}
}
TableBody.js
import React, { Component } from 'react'
export default class TableBody extends Component {
constructor(props) {
super(props)
}
render() {
const rows = this.props.employeesData.map((row, index) => {
return (
<tr key={index}>
<td>{row.name}</td>
<td>{row.role}</td>
</tr>
)
})
return (
<tbody> { rows } </tbody>
)
}
}
Demo
What's Next?
❮ Previous Chapter Next Chapter ❯
Comments
Post a Comment
Leave Comment