React-native-router-flux: ActionConst๋Š” ๋ฌด์—‡์„ ํ•ฉ๋‹ˆ๊นŒ?

์— ๋งŒ๋“  2016๋…„ 08์›” 17์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: aksonov/react-native-router-flux

์ด๊ฒƒ๋“ค์ด ๋ฌด์—‡์„ ํ•˜๋Š”์ง€ ์„ค๋ช…ํ•˜๋Š” ๋ฌธ์„œ๋ฅผ ์–ด๋””์—์„œ๋„ ์ฐพ์„ ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ์•ฑ์˜ ์Šคํ‚ค๋งˆ URL์„ ํด๋ฆญํ•˜์—ฌ ์•ฑ์„ ์—ด๋ฉด ์•ฑ์ด ๊ธฐ๋ณธ ํŽ˜์ด์ง€๋กœ ๋Œ์•„๊ฐ€๊ธฐ๋ฅผ ์›ํ•ฉ๋‹ˆ๋‹ค. ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•˜๋‚˜์š”? Actions.Main({type: ActionConst.POP_TO}); ์„ ์‹œ๋„ํ–ˆ์ง€๋งŒ $#$ Main ์„ ์ฐพ์„ ๋•Œ๊นŒ์ง€ ํŒ๋  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์ง€๋งŒ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜์—ฌ Actions.Main({type: ActionConst.RESET}); ์— ์ •์ฐฉํ–ˆ์ง€๋งŒ ๊ทธ๊ฒƒ์ด ๋ฌด์—‡์„ ํ•˜๋Š”์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค(์ž‘๋™ํ•˜์ง€๋งŒ ).

์ด๊ฒƒ๋“ค์ด ๋ฌด์—‡์„ ํ•˜๊ณ  ์–ธ์ œ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š”์ง€์— ๋Œ€ํ•œ ์ข‹์€ ์„ค๋ช…์ด ์žˆ์Šต๋‹ˆ๊นŒ?

| ์žฌ์‚ฐ | ์œ ํ˜• | ๊ฐ€์น˜ | ์†๊ธฐ |
| --- | --- | --- | --- |
| ActionConst.JUMP | string | 'REACT_NATIVE_ROUTER_FLUX_JUMP' | '์ ํ”„' |
| ActionConst.PUSH | string | 'REACT_NATIVE_ROUTER_FLUX_PUSH' | 'ํ‘ธ์‹œ' |
| ActionConst.REPLACE | string | 'REACT_NATIVE_ROUTER_FLUX_REPLACE' | '๋ฐ”๊พธ๋‹ค' |
| ActionConst.BACK | string | 'REACT_NATIVE_ROUTER_FLUX_BACK' | '๋’ค๋กœ' |
| ActionConst.BACK_ACTION | string | 'REACT_NATIVE_ROUTER_FLUX_BACK_ACTION' | '๋ฐฑ์•ก์…˜' |
| ActionConst.POP_TO | string | 'REACT_NATIVE_ROUTER_FLUX_POP_TO' | ํŒํˆฌ' |
| ActionConst.REFRESH | string | 'REACT_NATIVE_ROUTER_FLUX_REFRESH' | '์ƒˆ๋กœ๊ณ ์นจ' |
| ActionConst.RESET | string | 'REACT_NATIVE_ROUTER_FLUX_RESET' | '๋ฆฌ์…‹' |
| ActionConst.FOCUS | string | 'REACT_NATIVE_ROUTER_FLUX_FOCUS' | '์ดˆ์ ' |

๋ชจ๋“  3 ๋Œ“๊ธ€

๋ฏธ๋ž˜์˜ ๋ณ€ํ™”๋ฅผ ํ”ผํ•˜๊ธฐ ์œ„ํ•œ ๋‹ค์–‘ํ•œ ํ–‰๋™์˜ ์‹ค์ œ ๊ฐ€์น˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ƒ์ˆ˜์˜ ๋ฌด๋ฆฌ์ผ ๋ฟ์ž…๋‹ˆ๋‹ค.
redux ์•ก์…˜์ฒ˜๋Ÿผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์ง์ ‘ ์˜ˆ๋ฅผ ๋“ค์–ด ์‚ฌ์šฉํ•  ์ˆ˜์žˆ๋Š” Actions.pop() ๋‹น์‹ ์ด ํ•  ๋•Œ, ์žฅ๋ฉด ์œ ํ˜•์—์„œ ๊ทธ ์ •์ˆ˜๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค, ์†Œ์Šค ์ฝ”๋“œ๋กœ ์ž‘์„ฑ ๋Œ€์‘ ์กฐ์น˜๋ฅผ ํŒŒ๊ฒฌ, ๋˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค Actions.main() ,์ด์— ๋”ฐ๋ผ ์กฐ์น˜๋ฅผ ํŒŒ๊ฒฌ๋ฉ๋‹ˆ๋‹ค scene type ๋˜๋Š” ๊ธฐ๋ณธ.

๊ทธ๋Ÿฌ๋‚˜ ๋ชจ๋“  ActionConst๊ฐ€ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค(์•ก์…˜์œผ๋กœ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ scene type ์—์„œ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์—ฌ๋ถ€). ๊ทธ๋ž˜์„œ ์ œ๊ฐ€ ์‹ค์ œ ๊ฐ’์„ ๋งˆ์Šคํ‚นํ•˜๋Š” ์ƒ์ˆ˜์˜ ๋ฌด๋ฆฌ๋ผ๊ณ  ๋งํ•œ ์ด์œ ์ž…๋‹ˆ๋‹ค.

๊ท€ํ•˜์˜ ์งˆ๋ฌธ์— ๋Œ€ํ•ด route architecture ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. ๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ฒฝ๋กœ ์Šคํƒ์„ ๊ท€์ฐฎ๊ฒŒ ํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด Actions.main(); ์ž…๋‹ˆ๋‹ค.
๊ธฐ๋ณธ ์žฅ๋ฉด์—์„œ type='ActionConst.REPLACE'๋ฅผ ์„ค์ •ํ•˜๋ฉด ํ•ด๋‹น ์žฅ๋ฉด์œผ๋กœ ์ ํ”„ํ•˜์ง€๋งŒ ๊ฒฝ๋กœ ์Šคํƒ์ด ๊ต์ฒด๋ฉ๋‹ˆ๋‹ค.

@aksonov ๋‚˜๋Š” ๋‹น์‹ ์ด ์ด๊ฒƒ์„ ๋‹ซ์„ ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰