[ReactNative] ์ค‘์ฒฉ ๋ผ์šฐํ„ฐ ๋„ค๋น„๊ฒŒ์ด์…˜ ์ง€์ •ํ•ด์„œ ํŽ˜์ด์ง€ ์ด๋™
728x90

Today, What I learned?

๋ฆฌ์•กํŠธ ๋„ค์ดํ‹ฐ๋ธŒ์—์„œ ์ค‘์ฒฉ ๋ผ์šฐํ„ฐ๋กœ Stack์„ ๋งŒ๋“ค์–ด๋‘๊ณ , ๋‚ด๋น„๊ฒŒ์ด์…˜์„ ์ง€์ •ํ–ˆ์„ ๋•Œ ์•„๋ž˜์™€ ๊ฐ™์€ ์—๋Ÿฌ๋ฅผ ๋งŒ๋‚ฌ๋‹ค.

์ค‘์ฒฉ ๋ผ์šฐํ„ฐ์—์„œ๋Š” ๋„ค๋น„๊ฒŒ์ด์…˜์„ ์–ด๋–ค ์‹์œผ๋กœ ์ง€์ •ํ•ด์ฃผ์–ด์•ผ ํ•˜๋Š”์ง€ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค.

 

 

๋‚ด๋น„๊ฒŒ์ด์…˜ ๊ตฌ์กฐ

์šฐ์„  ๋„ค๋น„๊ฒŒ์ด์…˜ ๊ตฌ์กฐ๋Š” Root๋ผ๋Š” ์Šคํƒ์—์„œ ์Šคํƒ๊ณผ ํƒญ์„ ํ•˜๋‚˜๋กœ ๋ฌถ์–ด์ฃผ๊ณ  ์žˆ๋Š”, ์ค‘์ฒฉ๋œ ๊ตฌ์กฐ๋‹ค.

 

 

์ค‘์ฒฉ๋œ ๋„ค๋น„๊ฒŒ์ด์…˜

์œ„ ์—๋Ÿฌ ๋ฉ”์‹œ์ง€์—๋„ ์žˆ๋Š” navigation ๊ด€๋ จ ๋งํฌ๋กœ ์ด๋™ํ•ด์„œ ๋ณด๋ฉด ์ผ๋ฐ˜์ ์ธ ๋‚ด๋น„๊ฒŒ์ด์…˜ ์ง€์ •์€ ์•„๋ž˜์™€ ๊ฐ™์ด ํ•  ์ˆ˜ ์žˆ๋‹ค.

navigation.navigate('ํŽ˜์ด์ง€ ์ปดํฌ๋„ŒํŠธ๋ช…');

์ค‘์ฒฉ๋œ ๋‚ด๋น„๊ฒŒ์ด์…˜์—์„œ๋Š” ๋จผ์ € ์ƒ์œ„ ๋‚ด๋น„๊ฒŒ์ด์…˜์„ ์ง€์ •ํ•ด ์ฃผ๊ณ  screen์ด๋ผ๋Š” ์†์„ฑ์œผ๋กœ ํŽ˜์ด์ง€๋ช…์„ ์ง€์ •ํ•œ๋‹ค.

navigation.navigate('Root', { screen: 'Profile' });

 

ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋„˜๊ฒจ์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ, params ๋ผ๋Š” ์†์„ฑ์œผ๋กœ ๊ฐ’์„ ๋„˜๊ธธ ์ˆ˜ ์žˆ๋‹ค.

navigate('Stacks', {
          screen: 'MusicalDetail',
          params: { musicalId: musical?.mt20id[0] },
})

 

ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋ฐ›๋Š” ํŽ˜์ด์ง€์—์„œ๋Š” route๋ฅผ ํ†ตํ•ด์„œ ๊ฐ’์„ ๋ฐ›์•„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

export default function MusicalDetail({
  navigation: { navigate },
  route: {
    params: { musicalId },
  },
}) {
...

 

 

์‚ฌ์šฉํ•˜๋‹ค ๋ณด๋ฉด ์€๊ทผํžˆ ํ—ท๊ฐˆ๋ฆฌ๋Š”๋ฐ ์ƒ์œ„ ๋‚ด๋น„๊ฒŒ์ด์…˜๊ณผ ์Šคํฌ๋ฆฐ ๋ช…์„ ๊ผญ ์ง€์ •ํ•ด์ฃผ์–ด์•ผ ํ•˜๋Š” ์ ์„ ์žŠ์ง€ ๋ง์•„์•ผ๊ฒ ๋‹ค.

728x90