Notice
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- spring boot
- transaction
- js
- 드론
- 초등학생 겨울방학 놀이
- 자바
- spring
- 알티노
- 은평구립도서관
- jsp
- 코딩수업
- 초등학교 코딩수업
- 콜백함수
- Java
- CSS
- 코딩부트캠프
- 2024겨울방학 코딩부트캠프
- 초등학생 코딩수업
- 서울시여성가족재단
- 이것이 자바다
- 도서관 수업
- Cos Pro
- 자율주행자동차
- 스마트리움
- 뚜루뚜루
- Spring Security
- html
- 핑퐁로봇
- 2024우먼테크위크
- 2023 ICT R&D 주간
Archives
- Today
- Total
블로그
props 본문
props를 분해할당으로 받기
import React from "react";
function MyElem(props) {
console.log(props); // {name: "son", age: 33}
const { name, age } = props;
console.log("name", name); // son
console.log("age", age); // 33
return <div></div>;
}
function MyComp({ city, country, price }) {
// props : {city: "seoul", country:"korea", price: 500}
console.log("city", city);
console.log("country", country);
console.log("price", price);
return <div></div>;
}
function App(props) {
return (
<div>
<MyElem name="son" age={33} />
<MyComp city="seoul" country="korea" price={500} />
</div>
);
}
export default App;
props의 값이 없을 때 기본값 할당하는 방법
import React from "react";
function MyComp({ name, team = "무소속" }) {
return (
<div>
<ul>
<li>이름 : {name}</li>
<li>팀 : {team}</li>
</ul>
</div>
);
}
function App(props) {
return (
<div>
<MyComp name="흥민" age={33} team="토트넘" />
<MyComp name="길동" age={44} />
</div>
);
}
export default App;
prop의 값 타입은 javascript의 자료형
값은 {}안에 작성
단, string이면 {}생략 가능
import React from "react";
function MyComp(props) {
return <div></div>;
}
function App(props) {
return (
<div>
{/* props의 값타입은 javascript 값타입 */}
{/* {}에 값 입력, (string만 생략 가능) */}
<MyComp
name={"son"}
street="gangnam"
age={3.14}
address={{ city: "seoul", contry: "us" }}
foods={["pizza", "coffee"]}
married={true}
action={function () {
console.log("action");
}}
someAction={() => console.log("someAction")}
/>
</div>
);
}
export default App;
props의 명명규칙
- lowerCamelCase
- 예약어 쓰지 않기
- class -> className
- for -> htmlFor
props에 값이 없이 이름만 작성되면 값이 true
import React from "react";
function MyComp({ name, age, someProp, otherProp }) {
console.log("name", name);
console.log("age", age);
console.log("someProp", someProp); // true :값없이 작성되면 true
console.log("otherProp", otherProp); // true
return <div></div>;
}
function App(props) {
return (
<div>
<MyComp name="son" age={30} someProp otherProp={true} />
</div>
);
}
export default App;
이벤트 props
import React from "react";
function App(props) {
return (
<div>
<button
onClick={() => console.log("clicked")}
onMouseEnter={() => console.log("mouse entered")}
onMouseLeave={() => console.log("mouse leaved")}
>
클릭1
</button>
<input type="text" onChange={() => console.log("changed")} />
</div>
);
}
export default App;
style props는 객체
import React from "react";
function MyComp({ headColor, bodyColor }) {
return (
<div>
<h1 style={{ color: headColor }}>Lorem.</h1>
<p style={{ color: bodyColor }}>Lorem ipsum dolor.</p>
</div>
);
}
function App(props) {
return (
<div>
<MyComp headColor={"skyblue"} bodyColor={"gold"} />
<MyComp headColor={"gray"} bodyColor={"linen"} />
</div>
);
}
export default App;
'개발자 준비과정 > Javascript, React' 카테고리의 다른 글
React routee: useParams(), useSearchParams(), useNavigate() (0) | 2024.05.22 |
---|---|
상태 코드와 ResponseEntity (0) | 2024.05.22 |
빌더 패턴, 프로미스 (0) | 2024.05.21 |
콜백 함수 (리액트 예제) (0) | 2024.05.20 |
import, export (0) | 2024.05.15 |