레이아웃 구성 요소를 만드는 방법: React

7775 단어 reactcomponents
반응 애플리케이션/웹 사이트를 만들 때 대부분의 페이지는 전체에서 동일한 콘텐츠를 공유합니다. 예를 들어 탐색 모음 및 페이지 바닥글입니다. 렌더링할 모든 페이지의 각 구성 요소를 가져오는 대신 레이아웃 구성 요소를 만드는 것이 훨씬 쉽고 빠릅니다.

이 게시물에서는 레이아웃 구성 요소를 사용하여 반응 앱을 만드는 방법을 다룹니다.

라이브 데모: https://hjpx0v.csb.app/

데모 소스 코드: https://github.com/achingachris/react-layout-demo

방법은 다음과 같습니다.

create-react-app을 사용하여 React 앱 만들기



새 React 애플리케이션을 시작하려면 개발자 환경의 CLI에서 다음을 실행하십시오.

npx create-react-app react-layout-demo
cd react-layout-demo
npm start

설치에 성공하면 브라우저를 열고 http://localhost:3000/:으로 이동합니다.

Default react landing page

레이아웃 구성 요소 만들기


src 디렉토리 안에 새 폴더components/를 만들고 새 폴더 안에 새 파일Layout.js을 추가합니다.

새 파일 내에서 새 구성 요소를 만듭니다.

You can choose either class component or functional component that works best for you 😄




const Layout = () => {
  return (
    <div>Layout</div>
  )
}

export default Layout

구성 요소를 레이아웃 구성 요소로 만들기


layout component 구성 요소를 만들기 위해 React inheritance 을 사용하여 Layout 구성 요소를 가져올 모든 위치에서 사용되는 구성 요소의 내용을 허용합니다. 이를 위해 children 소품을 사용합니다.

const Layout = ({ children }) => {
  return <div>{children}</div>
}

export default Layout

레이아웃에 탐색 및 바닥글 추가.


src/components 디렉토리 내에서 두 개의 새 파일(Navigation.jsFooter.js을 추가하고 다음과 같이 컨텐츠를 업데이트하십시오.
Navigation.js



Footer.js




<script id="gist-ltag"src="https://gist.github.com/achingachris/55584bf64f3e219f2efccfad694cf3a0.js"/>


레이아웃 구성요소에 탐색 및 바닥글을 추가하려면 Layout.js를 다음으로 업데이트합니다.




import Navigation from './Navigation'
import Footer from './Footer'

const Layout = ({ children }) => {
  return (
    <>
      <Navigation />
      <main>{children}</main>
      <Footer />
    </>
  )
}

export default Layout






import NavigationBar from '../components/NavigationBar'
import Footer from '../components/Footer'

const Layout = ({children}) => {
 return (
  <div>
    <NavigationBar />
    <Footer />
  </div>
 )
}



레이아웃 구성 요소 사용



구성 요소를 필요한 페이지로 가져옵니다. 즉




import Layout from '../layout/Layout'

const AboutPage = () => {

return (
  <Layout>
    //page content
  </Layout>
)

}



구성 요소의 모든 콘텐츠가 <Layout></Layout> 안에 래핑되었는지 확인합니다.



결론



이 게시물에서는 React에서 레이아웃 구성 요소를 만드는 단계를 다루었습니다.



코드샌드박스



<iframe src="https://codesandbox.io/embed/gifted-orla-hjpx0v"style="너비:100%; 높이:calc(300px + 8vw); 테두리:0; 테두리 반경: 4px ; 오버플로:숨김;"allow="위치 정보; 마이크; 카메라; 미디; vr; 가속도계; 자이로스코프; 지불; 주변광 센서; 암호화된 미디어; usb"로딩="게으른"sandbox="allow-modals 허용 양식 허용 팝업 허용- 스크립트 허용-동일 출처">
</iframe>

좋은 웹페이지 즐겨찾기