Single Page Application 개발도구로 서버로부터 페이지를 불러오지 않고 현재의 페이지를 동적으로 작성함으로써 사용자와 소통하는 웹 어플리케이션이나 웹 사이트를 개발할 수 있다.
npx create-react-app my-app --template=typescript
간단하게 TypeScript로 React 시작 가능
// index.tsx
ReactDom.render(
<React.StrictMode>
<App />
</React.StrictMode>,
document.getElementById("root")
);
// App.tsx
function App() {
return <div></div>;
}
View를 구성하는 작은 단위로 독립적으로 재사용이 가능한 단위이다.
하나의 컴포넌트에서 다른 컴포넌트로 전달되는 argument
// component.tsx
import React from "react";
interface MyProps {
children?: React.ReactNode;
num: number;
onClick?: () => void;
}
const Component: React.FC<MyProps> = (props) => {
const { num, children, onClick } = props;
return (
<button
onClick={onClick}
>
{children}
</button>
)
}
// App.tsx
import React from "react";
import Component from "./component";
function App() {
const click = () => {
alert("Click!");
};
return(
<div>
<Component onClick={click}>
<div>button</div>
</Component>
</div>
)
}