ํŒ€ ํ”„๋กœ์ ํŠธ*(Front 1๋ช…, Back 1๋ช…, Game 1๋ช…)*

๋‚ด ์—ญํ•  : Front-End Developer

๐Ÿ”—ย GitHub Link

https://github.com/alardin/alardin-front


๐Ÿ“‘ย ์„œ๋น„์Šค ๋‚ด์šฉ

Alardin๋Š” โ€˜5๋ถ„๋งŒ ํ˜„์ƒโ€™์„ ํ•ด๊ฒฐํ•˜๊ณ ์ž ์‚ฌ์šฉ์ž์˜ ์•„์นจ์„ โ€˜Funโ€™ํ•˜๊ฒŒ ์ œ๊ณตํ•˜๊ณ  ์‹ถ์€ ๋ชฉ์ ์œผ๋กœ ๋‹จ์ˆœํ•œ ์•Œ๋žŒ์˜ ๊ธฐ๋Šฅ์ด ์•„๋‹ˆ๋ฉฐ ์ฃผ๋ณ€ ์‚ฌ๋žŒ๋“ค๊ณผ์˜ ๋ฉ”์ดํŠธ๋ฅผ ์ง€์–ด ํ•จ๊ป˜ ์ผ์–ด๋‚˜๊ณ  ๊ฒŒ์ž„์˜ ์ฆ๊ฑฐ์›€์œผ๋กœ ์•Œ๋žŒ์„ ๋Œ ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-12-01 แ„‹แ…ฉแ„’แ…ฎ 3.45.13.png

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-12-01 แ„‹แ…ฉแ„’แ…ฎ 3.44.58.png

๐Ÿ”จย ๊ธฐ์ˆ  ์Šคํƒ

โŒจ๏ธย ๊ฐœ๋ฐœ ํ™œ๋™

์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ UI ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

๊ฐ ๊ธฐ๋Šฅ๋ณ„๋กœ ํ•„์š”ํ•œ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ƒˆ๋กœ ์ƒ์„ฑํ•˜์ง€ ์•Š๊ณ  ํ•˜๋‚˜์˜ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ œ์ž‘ํ•˜์—ฌ ์ƒํ™ฉ์— ๋”ฐ๋ผ ํ•„์š”ํ•˜๋Š” ์Šคํƒ€์ผ๋ง, ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ ๋“ฑ์„ Props ํ†ตํ•ด ๋ฐ›์•„์™€ ์ ์šฉ๋˜๋Š” ํ˜•ํƒœ๋กœ ๊ตฌํ˜„

...
const Button = ({
  width,
  height,
  center,
  value,
  fontSize,
  options,
  disabled,
  children,
  ...rest
}: IButtonProps) => {
  const pressedColor = themeName.button[options].pressed.split(' ')[1];
  return (
    <DefaultButton
      {...{ width, height, center, options, disabled, ...rest }}
      activeOpacity={1}
      underlayColor={pressedColor.substring(0, pressedColor.length - 1)}
      value={value}>
      {React.isValidElement(children) ? (
        children
      ) : (
        <ButtonText {...{ fontSize, options, height, disabled }}>
          {children}
        </ButtonText>
      )}
    </DefaultButton>
  );
};
...