๐Ÿ““ TIL

[220726] React

k_m_jin 2022. 7. 27. 03:22

React

  • npm
  • yarn : ํŽ˜์ด์Šค๋ถ์—์„œ ๋งŒ๋“  ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €

nvm ์œผ๋กœ node ์ตœ์‹  ๋ฒ„์ „ ์„ค์น˜

nvm install --lts

yarn ์œผ๋กœ ๋ฆฌ์•กํŠธ ํ”„๋กœ์ ํŠธ ์‹œ์ž‘

yarn create react-app ํด๋”๋ช…

Props

  • ๋ถ€๋ชจ
    <Intro name='jini' age='85' email='mem@naver.com' />
    function Intro({ name = 'Jini', age }) {
    return (
      <>
      ์ด๋ฆ„ : {name} <br />
      ๋‚˜์ด : {age} <br />
      </>
    )
    }
  • ๊ธฐ๋ณธ๊ฐ’*
    function Intro({ name = 'Jini', age })
    Intro.defaltProps = {
     name: 'Jini',
    }

moment

import React, { useState } from 'react'
import moment from 'moment-timezone'

function Clock(props) {
  const {  newTz } = props
  const [time, setTime] = useState(moment().tz(newTz).format('YYYY-MM-DD HH:mm:ss'))

  const changeTz = (TZ) => {
    setTime(moment().tz(TZ).format('YYYY-MM-DD HH:mm:ss'))
  }

  return (
    <>
      <div>{time}</div>
      <button onClick={() => changeTz('Asia/Seoul')}>์„œ์šธ</button>
      <button onClick={() => changeTz('US/Pacific')}>๋ฏธ๊ตญ</button>
    {/* ๋ฒ„ํŠผ props ์œผ๋กœ ๋ฐ›๊ธฐ */}
      <button onClick={() => changeTz(newTz)}>{newTz}์œผ๋กœ ๋ฐ”๊พธ๊ธฐ</button>
    </>
  )
}

export default Clock
๋ฐ˜์‘ํ˜•