Giter Site home page Giter Site logo

openmarket's Introduction

์•ˆ๋…•ํ•˜์„ธ์š” ๐Ÿ‘‹ ์ฃผ๋‹ˆ์–ด ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž ์œ ์œค์šฐ ์ž…๋‹ˆ๋‹ค. ๐Ÿ˜„

email โœ‰ : [email protected]

Blog ๐ŸŽž



Stack ๐Ÿ“š


HTML5 CSS3 JavaScript

React Next JS React Query Redux

SASS Styled Components


yunwoo-yu's github stats

Solved.ac Profile

Hits

openmarket's People

Contributors

yunwoo-yu avatar

Stargazers

 avatar  avatar

Watchers

 avatar

openmarket's Issues

[Error] ๋กœ๊ทธ์ธ ์ดํ›„ ํ—ค๋”์— ํ† ํฐ์ด ํ•„์š”ํ•œ ํŽ˜์ด์ง€ ์ง„์ž…

๋ฌธ์ œ์ 

  • ๋กœ๊ทธ์ธ ์ดํ›„ ์ƒˆ๋กœ๊ณ ์นจ ์—†์ด ์žฅ๋ฐ”๊ตฌ๋‹ˆ ํŽ˜์ด์ง€๋ฅผ ๋“ค์–ด๊ฐ€๋ฉด ํ—ค๋”์— ํ† ํฐ์„ ์ธ์‹ํ•˜์ง€ ๋ชปํ•˜๋Š” ๋ฌธ์ œ ๋ฐœ์ƒ
  • ๋กœ์ปฌ์Šคํ† ๋ฆฌ์ง€์—๋Š” ์ •์ƒ์ ์œผ๋กœ ํ† ํฐ์ด ๋“ค์–ด๊ฐ€ ์žˆ์Œ์„ ํ™•์ธ

๋ฌธ์ œ๋ฐœ์ƒ ์ฝ”๋“œ & ์ด๋ฏธ์ง€

Nov-01-2022 11-30-51

ํ•ด๊ฒฐ ๋ฐฉ์•ˆ

  • axios์˜ api ํ˜ธ์ถœ ํ•จ์ˆ˜์˜ instance ์„ค์ •์ด ๋ฌธ์ œ์˜€๋‹ค.
    image
  • ํ—ค๋”์— localStorage์— ์ €์žฅ๋˜์–ด ์žˆ๋Š” ํ† ํฐ์„ ๋ฏธ๋ฆฌ ๋„ฃ์–ด๋’€์—ˆ๊ณ  api ํ˜ธ์ถœ ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•˜๋ฉด localStorage์— ๋ฐ›์•„์˜จ ํ† ํฐ๊ฐ’์„ ๋„ฃ์–ด์ฃผ๋Š” ํ˜•ํƒœ.
  • ๋”ฐ๋ผ์„œ ๋„คํŠธ์›Œํฌ ํƒญ์„ ํ™•์ธ ํ•ด ๋ณด๋ฉด ์š”์ฒญ ํ—ค๋”์—๋Š” null์ด ๋“ค์–ด์žˆ์Œ์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๋‹ค.

image

  • ๋ฌธ์ œ์ ์„ ํŒŒ์•…ํ•ด ๋ณด์ž๋ฉด ๋ฆฌ์•กํŠธ์˜ ์‹คํ–‰ ์ˆœ์„œ ๊ด€๋ จ ์ด์˜€๋Š”๋ฐ ํ˜„์žฌ์˜ ์ˆœ์„œ๋ฅผ ํ‘œํ˜„ํ•ด๋ณด์ž๋ฉด ์ด๋ ‡๋‹ค.
  • ํŽ˜์ด์ง€ ์ง„์ž… -> js ํŒŒ์‹ฑ -> axios accessInstance ์ƒ์„ฑ -> ๋กœ์ปฌ ์Šคํ† ๋ฆฌ์ง€ setItem -> api ์š”์ฒญ (์ด ๋•Œ accessInstance๋Š” ์ด๋ฏธ ์ƒ์„ฑ์ด ๋˜์–ด์žˆ๊ณ  localstorage์— ์žˆ๋Š” ํ† ํฐ์ด ๋”ฐ๋กœ ํ—ค๋”์— ๋‹ด๊ธฐ์ง€ ์•Š์Œ) -> ์ƒˆ๋กœ ๊ณ ์นจ -> ๋‹ค์‹œ js ํŒŒ์‹ฑ์ด ์‹œ์ž‘ -> accessInstance ์ƒ์„ฑ -> ์ด ์‹œ์ ์—๋Š” ๋กœ์ปฌ ์Šคํ† ๋ฆฌ์ง€์— ํ† ํฐ์ด ์žˆ์Œ์ด ํ™•์ธ๋˜์–ด ํ—ค๋”์— ๋‹ด๊น€
  • ๋ฌธ์ œ์  ํ•ด๊ฒฐ์„ ์œ„ํ•ด axios์˜ ์ธํ„ฐ์…‰ํ„ฐ ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•˜์—ฌ request ์š”์ฒญ์„ ๋ง ๊ทธ๋Œ€๋กœ ์ค‘๊ฐ„์— ๊ฐ€๋กœ์ฑ„์„œ header์˜ Authorization ๊ฐ’์„ localStorage์— ๋‹ด๊ธด ํ† ํฐ๊ฐ’์œผ๋กœ ๋ณ€๊ฒฝํ•ด ์ฃผ์—ˆ๋‹ค.
    image

[Error] ํšŒ์›๊ฐ€์ž… ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ

๋ฌธ์ œ์ 

  • ๊ฐ์ฒด๋กœ ํšŒ์›๊ฐ€์ž… input๊ฐ’๋“ค์„ useState์— ๋„ฃ์–ด ๊ด€๋ฆฌํ•˜๊ณ  ์žˆ๋˜ ์ค‘ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ์œ„ํ•œ ์ •๊ทœํ‘œํ˜„์‹์— ๊ฐ’์„ ๋„ฃ์–ด ๋ฐ˜์˜ํ–ˆ์œผ๋‚˜ ์ฆ‰์‹œ ์—…๋ฐ์ดํŠธ ๋˜์ง€ ์•Š๋Š” ๋ฌธ์ œ์  ๋ฐœ์ƒ

๋ฌธ์ œ ๋ฐœ์ƒ ์ฝ”๋“œ & ์ด๋ฏธ์ง€

image

  • ํšŒ์›๊ฐ€์ž… api ์š”์ฒญ ์‹œ ํ•„์š”ํ•œ ๋ชจ๋“  input value๋ฅผ ๊ฐ์ฒด์— ํ• ๋‹น.

image

  • ์ „์—ญ์— ์ •๊ทœํ‘œํ˜„์‹ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ

image

  • onChange ํ•จ์ˆ˜๋กœ ๋ณ€๊ฒฝ๊ฐ’์„ ๊ฐ์ง€ํ•˜๊ณ  setValues ์—…๋ฐ์ดํŠธ
  • ์—…๋ฐ์ดํŠธ ์ดํ›„ ํ˜„์žฌ ์„ ํƒ๋œ target์— ์œ ํšจ์„ฑ๊ฒ€์‚ฌ๊ฐ€ ํ†ต๊ณผ ํ–ˆ๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ํ†ต๊ณผํ•˜์ง€ ๋ชปํ•˜๋ฉด Error๊ฐ์ฒด๊ฐ€ ๋‹ด๊ธด State์— ๋ฉ”์„ธ์ง€ ์—…๋ฐ์ดํŠธ

ํ•ด๊ฒฐ๋ฐฉ์•ˆ

  • useState์˜ setState๋Š” ๋น„๋™๊ธฐ๋กœ ๋™์ž‘ํ•œ๋‹ค.
  • ๊ธฐ์กด์— useState์˜ ๊ฐ’์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ–ˆ์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ํ•œ๋ฐ•์ž์”ฉ ๋ฐ€๋ ธ์—ˆ๋˜๊ฒƒ.
  • ํ•ด๊ฒฐ๋ฒ•์€ state๊ฐ’์„ ์ง์ ‘ ๋Œ์–ด๋‹ค ์“ฐ๋Š”๊ฒŒ ์•„๋‹Œ event.target ๊ฐ’์œผ๋กœ ๋ณ€๊ฒฝ.

image

  • ์œ ํšจ์„ฑ์„ ๊ฒ€์‚ฌ ํ•˜๋Š” ์ •๊ทœํ‘œํ˜„์‹์„ ํ•จ์ˆ˜๋กœ ๋ถ„๋ฆฌํ•ด์ฃผ๊ณ 

image

  • onChange ํ•จ์ˆ˜์— event.target๊ฐ’์„ ์ด์šฉํ•ด ๊ฐ๊ฐ์˜ ์ด๋ฆ„์— ๋งž๋Š” ์—๋Ÿฌ๋ฉ”์„ธ์ง€ ์ƒ์„ฑ.

๊ฐœ์„ ํ•  ์ 

  • ์กฐ๊ฑด๋ฌธ์ด ๋„ˆ๋ฌด ๋‚œ์žกํ•ด ๋ณด์ธ๋‹ค. ๋” ํด๋ฆฐํ•œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ๋ฐฉ๋ฒ•์ด ์—†๋Š”์ง€?
  • ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ onChange ํ•จ์ˆ˜์˜ ์กฐ๊ฑด๋ฌธ๊นŒ์ง€ ๋‚œ์žกํ•ด์ง€๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒ. ๋ฆฌํŒฉํ† ๋ง์ด ํ•„์š”ํ•ด๋ณด์ธ๋‹ค.

[Bug] window.location.pathname์— ๋”ฐ๋ฅธ ์žฅ๋ฐ”๊ตฌ๋‹ˆ ์•„์ด์ฝ˜ ๋ณ€๊ฒฝ

๋ฌธ์ œ์ 

  • ํ˜„ pathname์— ๋”ฐ๋ผ '/cart'์ผ ๊ฒฝ์šฐ์˜ ์žฅ๋ฐ”๊ตฌ๋‹ˆ ์•„์ด์ฝ˜๊ณผ ์•„๋‹ ๊ฒฝ์šฐ์˜ ์•„์ด์ฝ˜์„ ์กฐ๊ฑด๋ถ€ ๋ Œ๋”๋ง ํ•˜๋Š” ๋„์ค‘ ์ƒ๊ธด ๋ฌธ์ œ
  • ํŽ˜์ด์ง€ ์ด๋™์ด ์ด๋ฃจ์–ด์ ธ๋„ window.location.pathname์ด ์ฆ‰๊ฐ ์—…๋ฐ์ดํŠธ ๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์•„์ด์ฝ˜ ๋ณ€๊ฒฝ์ด ์ด๋ฃจ์–ด์ง€์ง€ ์•Š์Œ.

๋ฌธ์ œ ๋ฐœ์ƒ ์ฝ”๋“œ & ์ด๋ฏธ์ง€

image

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-10-22 แ„‹แ…ฉแ„’แ…ฎ 6 30 01

  • ์นดํŠธ ์•„์ด์ฝ˜์„ ํด๋ฆญํ•ด ์žฅ๋ฐ”๊ตฌ๋‹ˆ ํŽ˜์ด์ง€๋กœ ์ด๋™ ์‹œ Cart2์˜ ์ด๋ฏธ์ง€๋ฅผ ๋ถˆ๋Ÿฌ์™€์•ผ ํ•˜๋Š”๋ฐ ์ƒˆ๋กœ๊ณ ์นจ ํ•˜์ง€ ์•Š๋Š” ์ด์ƒ ๋ณ€๊ฒฝ๋˜์ง€์•Š์Œ.

ํ•ด๊ฒฐ ๋ฐฉ์•ˆ

image

  • react-router์—์„œ ์ œ๊ณตํ•ด์ฃผ๋Š” useLocation ํ›…์„ ์ด์šฉํ•ด์„œ ํ•ด๊ฒฐ.
  • ์ œ๊ณต๋˜๋Š” hooks๋ฅผ ์กฐ๊ธˆ ๋” ๊ผผ๊ผผํžˆ ์‚ดํŽด๋ณด๋„๋ก ํ•˜๊ธฐ.

[Auth] ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž… ์ธ์ฆ ๊ด€๋ จ ๊ธฐ๋Šฅ๊ตฌํ˜„

๋ชฉ์ 

  • ๋กœ๊ทธ์ธ ๋ฐ ํšŒ์›๊ฐ€์ž… ๊ธฐ๋Šฅ ๊ตฌํ˜„

๊ธฐ๋Šฅ

  • ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ
  • ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ
  • JWT ํ† ํฐ ๋ฐ›์•„์„œ ๋กœ์ปฌ์Šคํ† ๋ฆฌ์ง€ ์ €์žฅ
  • ํŒ๋งค์ž, ๊ตฌ๋งค์ž ๋กœ๊ทธ์ธ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋ฐ ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • ํŒ๋งค์ž, ๊ตฌ๋งค์ž ํšŒ์›๊ฐ€์ž… ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋ฐ ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • ํ† ํฐ ์—ฌ๋ถ€์— ๋”ฐ๋ฅธ ๋ ˆ์ด์•„์›ƒ ๊ตฌ์„ฑ ๋ณ€๊ฒฝ

๊ตฌํ˜„ ๋„์ค‘ ์ƒ๊ธด ๋ฌธ์ œ ์‚ฌํ•ญ

#4 ํšŒ์›๊ฐ€์ž… ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ์—๋Ÿฌ(๋ฏธํ•ด๊ฒฐ)
#3 window.location.pathname ์žฅ๋ฐ”๊ตฌ๋‹ˆ ์•„์ด์ฝ˜ ๋ฌธ์ œ (ํ•ด๊ฒฐ)

[Error] ์ธ์ฆ๋˜์ง€ ์•Š์€ ํšŒ์›์˜ ์ƒํ’ˆ ์ƒ์„ธ ํŽ˜์ด์ง€ ์ ‘๊ทผ ์‹œ ์žฅ๋ฐ”๊ตฌ๋‹ˆ ๋ฆฌ์ŠคํŠธ ์ ‘๊ทผ ๋ฌธ์ œ

๋ฌธ์ œ์ 

์ƒํ’ˆ์˜ ์ƒ์„ธํŽ˜์ด์ง€์— ์ง„์ž… ์‹œ ์žฅ๋ฐ”๊ตฌ๋‹ˆ๋ฅผ ํ™•์ธํ•˜์—ฌ ๊ฐ™์€ ์ƒํ’ˆ์ด ํ˜„์žฌ ์žฅ๋ฐ”๊ตฐ์— ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๋กœ์ง์„ ๊ตฌํ˜„ํ–ˆ์œผ๋‚˜
์žฅ๋ฐ”๊ตฌ๋‹ˆ์˜ ์ ‘๊ทผ์„ ์œ„ํ•œ ์ธ์ฆ ํ† ํฐ์ด ์—†์„ ๊ฒฝ์šฐ๋Š” ์žฅ๋ฐ”๊ตฌ๋‹ˆ์— ๋Œ€ํ•œ ์ ‘๊ทผ์„ ๋ง‰์•„์•ผ ํ•˜๋Š”๋ฐ
react-qurey์˜ useQuery๋Š” ํ•จ์ˆ˜์˜ ์ตœ์ƒ๋‹จ์— ๋‘์–ด์•ผ ํ•จ์œผ๋กœ ์กฐ๊ฑด์‹์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์–ด์„œ ์ง€์†์ ์ธ api ์š”์ฒญ์„ ๋ณด๋ƒ„.

๋ฌธ์ œ๋ฐœ์ƒ ์ฝ”๋“œ & ์ด๋ฏธ์ง€

image
image
image
image

ํ•ด๊ฒฐ ๋ฐฉ์•ˆ

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.