Ionic-framework: ์ดˆ๊ธฐ ๋กœ๋”ฉ ์†๋„ ํ–ฅ์ƒ

์— ๋งŒ๋“  2016๋…„ 06์›” 06์ผ  ยท  159์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: ionic-team/ionic-framework

์šฐ๋ฆฌ๋Š” ๋ถ€๋ถ„์ ์œผ๋กœ ๋„ค์ดํ‹ฐ๋ธŒ์ด๊ณ  ๋ถ€๋ถ„์ ์œผ๋กœ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ์ธ ์•ฑ์„ ๊ฐœ๋ฐœ ์ค‘์ž…๋‹ˆ๋‹ค.
์‚ฌ์šฉ์ž๊ฐ€ ๋ฉ”๋‰ด ํ•ญ๋ชฉ์„ ํด๋ฆญํ•˜๋ฉด ์ฝ”๋ฅด๋„๋ฐ” ํ™œ๋™์„ ์—ด๊ณ  ์‚ฌ์šฉ์ž๊ฐ€ ๋’ค๋กœ ํด๋ฆญํ•˜๋ฉด ํ™œ๋™์„ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.
์ด ์ ‘๊ทผ ๋ฐฉ์‹์˜ ๋ฌธ์ œ์ ์€ ์ฒ˜์Œ ํ™”๋ฉด์— ๋ Œ๋”๋งํ•˜๋Š” ๋ฐ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฐ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ž์‚ฐ ํด๋”์— ์žˆ๋Š” ๋ชจ๋“  ๋ฆฌ์†Œ์Šค ํŒŒ์ผ์„ ํ˜ธ์ŠคํŒ…ํ•˜๋ฏ€๋กœ ์บ์‹ฑ์ด ์˜๋ฏธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ๋กœ๋“œํ•˜๋Š” ์ ์ง„์ ์ธ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ?

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

๋ชจ๋‘,

ํ˜„์žฌ ๋‚ด๋ถ€์ ์œผ๋กœ ์ด๋ฅผ ์ฒ ์ €ํžˆ ํ…Œ์ŠคํŠธํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ์ฃผ์— ํฐ ์ง„์ „์„ ์ด๋ฃจ์—ˆ์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

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

์•ˆ๋…•ํ•˜์„ธ์š” @dheran ์ž…๋‹ˆ๋‹ค. ์‹œ์ž‘ ์‹œ๊ฐ„์€ ์šฐ๋ฆฌ๊ฐ€ ์ด์•ผ๊ธฐํ•˜๋ฉด์„œ ์ค„์ด๊ธฐ ์œ„ํ•ด ์—ด์‹ฌํžˆ ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค(: . ์šฐ๋ฆฌ๋Š” ํ˜„์žฌ Ionic ์•ฑ์„ ํ›จ์”ฌ ๋” ์ž‘๊ฒŒ ๋งŒ๋“ค๊ณ  ์˜คํ”„๋ผ์ธ ํ…œํ”Œ๋ฆฟ ์ปดํŒŒ์ผ์„ ํฌํ•จํ•  ์ƒˆ๋กœ์šด ๋นŒ๋“œ ์ฒด์ธ์— ๋Œ€ํ•ด ์ž‘์—…ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋‘ ๊ฐ€์ง€ ๊ฐœ์„  ์‚ฌํ•ญ์„ ํ†ตํ•ด ๊ธฐ๋Œ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹œ์ž‘ ์‹œ๊ฐ„์ด ํฌ๊ฒŒ ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. StackOverflow ๋˜๋Š” ํฌ๋Ÿผ(forum.ionicframework.com)์—์„œ ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ ๋‚ด๋ถ€์— ์žˆ๋Š” webview๋ฅผ "์‚ฌ์ „ ๋กœ๋“œ"ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ๋ฌผ์–ด๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. Ionic์„ ์‚ฌ์šฉํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

@jgw96 ์•ˆ๋…•ํ•˜์„ธ์š”, ๊ธฐ์กด ๊ธฐ๋Šฅ ์š”์ฒญ์ด๋‚˜ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? ๋”ฐ๋ผ์„œ ๊ตฌํ˜„ ํ›„ ํ›„์† ์กฐ์น˜๋ฅผ ์‰ฝ๊ฒŒ ์ˆ˜ํ–‰ํ•˜๊ณ  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@dheran ์ข‹์€ ์งˆ๋ฌธ์ž…๋‹ˆ๋‹ค! ํ˜„์žฌ๋กœ์„œ๋Š” ๋งค์šฐ ์ดˆ๊ธฐ ๋‹จ๊ณ„์ด๊ธฐ ๋•Œ๋ฌธ์— ์ด์— ๋Œ€ํ•œ ์ข‹์€ ์ถ”์  ๋ฌธ์ œ๋Š” ์—†์ง€๋งŒ ์šฐ๋ฆฌ์—๊ฒŒ๋Š” ์ตœ์šฐ์„  ์ˆœ์œ„์ด๋ฉฐ ionic-cli ํŒ€์€ ์ด์— ๋Œ€ํ•ด ๋งŽ์€ ์ง„์ „์„ ์ด๋ฃจ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๊ฐ€ ๋” ์ง„์ „๋˜๋ฉด ์ง„ํ–‰ ์ƒํ™ฉ๊ณผ ํ•จ๊ป˜ ์ด ๋ฌธ์ œ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜์—ฌ ์˜ˆ์ƒ๋˜๋Š” ๋‚ด์šฉ์„ ์•Œ ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค(:

@jgw96 ๊ทธ๋Ÿผ ๊ทธ๋•Œ๊นŒ์ง€ ์—ด์–ด๋‘์ง€ ์•Š๊ฒ ์Šต๋‹ˆ๊นŒ?

@jgw96 ๋นŒ๋“œ ํ”„๋กœ์„ธ์Šค ๋™์•ˆ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” CSS๋ฅผ ์ œ๊ฑฐํ•˜๋Š” ๊ฒƒ๋„ ๋งŽ์€ ๊ธฐ์—ฌ๋ฅผ ํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ionic2๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋ฐ”์ผ ์›น ์‚ฌ์ดํŠธ๋ฅผ ๊ตฌ์ถ•ํ•œ ๋‹ค์Œ Android 4.4 ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—ด ๋•Œ ๋งค์šฐ ๋Š๋ฆฝ๋‹ˆ๋‹ค. ๋‚˜์—๊ฒŒ ์ข‹์€ ์ œ์•ˆ์ด ์žˆ์Šต๋‹ˆ๊นŒ?
์›น์‚ฌ์ดํŠธ: https://zhaoxie.net/static/weixin/index.html
image

์ฝ”๋ฅด๋„๋ฐ” CLI: 6.1.1
Ionic ํ”„๋ ˆ์ž„์›Œํฌ ๋ฒ„์ „: 2.0.0-beta.6
Ionic CLI ๋ฒ„์ „: 2.0.0-beta.31
Ionic ์•ฑ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฒ„์ „: 2.0.0-beta.17
iOS ๋ฐฐํฌ ๋ฒ„์ „: 1.8.5
ios-sim ๋ฒ„์ „: 5.0.6
OS: ๋งฅ OS X ์—˜ ์บํ”ผํƒ„
๋…ธ๋“œ ๋ฒ„์ „: v5.3.0
Xcode ๋ฒ„์ „: Xcode 7.2 ๋นŒ๋“œ ๋ฒ„์ „ 7C68

@jgw96 ์–ด๋–ค ๋ฒ„์ „์ด ์ด ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ• ์ง€ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์•ˆ๋…•ํ•˜์„ธ์š” @dheran์ž…๋‹ˆ๋‹ค ! ์ข‹์€ ์งˆ๋ฌธ! ์šฐ๋ฆฌ๋Š” ๋ฉฐ์น  ์ „ ์›นํŒฉ 2๋กœ ํŠธ๋ฆฌ์‰์ดํ‚น์„ ๊ตฌํ˜„ํ–ˆ์œผ๋ฉฐ ์—ฌ์ „ํžˆ ์˜คํ”„๋ผ์ธ ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ค๋Š˜ Angular ํŒ€์˜ ํšŒ์˜ ๋…ธํŠธ๋ฅผ ์ฝ์€ ํ›„ Angular 2 rc 4๊นŒ์ง€๋Š” ์˜คํ”„๋ผ์ธ ํ…œํ”Œ๋ฆฟ ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ "์•ˆ์ •์ "์ด๋ผ๊ณ  ๋ถ€๋ฅด์ง€ ์•Š์„ ๊ฒƒ ๊ฐ™์ง€๋งŒ ๊ทธ ์ „์— ์˜คํ”„๋ผ์ธ ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

@jgw96 ์ด๋ฏธ ๋ฌธ์ œ๋ฅผ ์ข…๋ฃŒํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. https://github.com/angular/angular/issues/3605
Angular RC 4๋Š” ๊ฑฐ์˜ 33% ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค(๋งˆ์ผ์Šคํ†ค์—์„œ).
ionic ๋ฒ ํƒ€ 10 ๋˜๋Š” 11์—์„œ ์ƒˆ๋กœ์šด ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ๊ธฐ๋Œ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์•ˆ๋…•ํ•˜์„ธ์š” @dheran , ์šฐ๋ฆฌ๋Š” ์ ๊ทน์ ์œผ๋กœ ์ž‘์—… ์ค‘์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์šฐ๋ฆฌ์—๊ฒŒ ๋งค์šฐ ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋†’์€ ํ•ญ๋ชฉ์ด๋ฏ€๋กœ ๊ฐ€๋Šฅํ•œ ํ•œ ๋นจ๋ฆฌ ์™„๋ฃŒ๋  ์˜ˆ์ •์ด๋‹ˆ ์•ˆ์‹ฌํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

@danbucholtz ๊ณต์‹ ์†”๋ฃจ์…˜์ด ๋‚˜์˜ฌ ๋•Œ๊นŒ์ง€ ์ดˆ๊ธฐ ๋ Œ๋”๋ง ์‹œ๊ฐ„์„ ์ค„์ด๊ธฐ ์œ„ํ•œ ์ž„์‹œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ์ œ์•ˆํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ์ด ๋ฌธ์ œ๋ฅผ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ๋„ค์ดํ‹ฐ๋ธŒ ์ฝ”๋“œ๋กœ ๋™์ผํ•œ ๊ฒƒ์„ ์‚ญ์ œํ•˜๊ณ  ๋นŒ๋“œํ•ด์•ผ ํ•˜๋Š” ๋‘ ๊ฐ€์ง€ ์„ ํƒ์ด ๋‚ด๊ฒŒ ์ฃผ์–ด์กŒ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” @dheran ,

์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ๋กœ์„œ๋Š” ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ œ๊ณตํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๐Ÿ˜„ ์šฐ๋ฆฌ๋Š” ๋ฒ ํƒ€ ๋‹จ๊ณ„์— ์žˆ์œผ๋ฉฐ ์˜คํ”„๋ผ์ธ ํ…œํ”Œ๋ฆฟ ์ปดํŒŒ์ผ ๋ฐ ์ถ•์†Œ๋ฅผ ์ข‹์€ ์ƒํƒœ๋กœ ์ „ํ™˜ํ•˜๊ธฐ ์œ„ํ•ด Angular๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Œ์„ ๊ธฐ์–ตํ•˜์‹ญ์‹œ์˜ค. ๊ทธ๋“ค์ดํ•˜๋Š” ์ผ์„ ๋ชจ๋ฐฉํ•˜์‹ญ์‹œ์˜ค. ์ด๊ฒƒ์€ ์šฐ๋ฆฌ๊ฐ€ ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ ๋นŒ๋“œ ํ”„๋กœ์„ธ์Šค์— ๋“ค์–ด๊ฐ€๋Š” ๊ฒƒ์ด ๋งค์šฐ ์ค‘์š”ํ•˜์ง€๋งŒ ์•„์ง ์ค€๋น„๊ฐ€ ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

+1

rc4๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆด ์ˆ˜ ์žˆ์ง€๋งŒ ์˜คํ”„๋ผ์ธ ํ…œํ”Œ๋ฆฟ ์ปดํŒŒ์ผ์„ ๋†’์€ ์šฐ์„  ์ˆœ์œ„๋กœ ์œ ์ง€ํ•˜์‹ญ์‹œ์˜ค. ์ฐธ๊ณ ๋กœ, ์šฐ๋ฆฌ ์•ฑ์˜ ์ดˆ๊ธฐ ์‹œ๊ฐ„์€ ์•ฝ 8์ดˆ์ด์ง€๋งŒ ๋‹ค๋ฅธ ๊ธฐ๋ณธ ์•ฑ์˜ ์ดˆ๊ธฐ ์‹œ๊ฐ„์€ ์•ฝ 1-4์ดˆ์ž…๋‹ˆ๋‹ค. ์ดˆ๊ธฐ ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋งˆ์ง€๋ง‰์œผ๋กœ ์ž‘์—…์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

@grapemix ํ™•์‹คํžˆ ๋†’์€ ์šฐ์„  ์ˆœ์œ„์ž…๋‹ˆ๋‹ค! ์šฐ๋ฆฌ๋Š” ํ‰๊ท  ์•ฑ ํฌ๊ธฐ๋ฅผ ํ›จ์”ฌ ๋” ์ž‘๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋„๋ก ํŠธ๋ฆฌ ์‰์ดํ‚น ๋ฐ ๊ณต๊ฒฉ์ ์ธ ์ถ•์†Œ์™€ ํ•จ๊ป˜ Ionic๊ณผ ํ•จ๊ป˜ ์ž‘๋™ํ•˜๋Š” ์˜คํ”„๋ผ์ธ ํ…œํ”Œ๋ฆฟ ์ปดํŒŒ์ผ์„ ์–ป๊ธฐ ์œ„ํ•ด Angular ํŒ€๊ณผ ์ง€์†์ ์œผ๋กœ ํ˜‘๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์œ„์—์„œ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด Angular์—๋Š” ํ˜„์žฌ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ๋Š” ๋ช‡ ๊ฐ€์ง€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์žˆ์ง€๋งŒ ํ™•์‹คํžˆ ์™„๋ฃŒ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค(:

+1

+1

@jgw96 @danbucholtz ์—ฌ๋Ÿฌ๋ถ„, ์ด๊ฒƒ์— ์ง„์ „์ด ์žˆ์Šต๋‹ˆ๊นŒ? ๋ฒ ํƒ€ 11์—์„œ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

+1

์–ด๋–ค ์ €์žฅ์†Œ์—์„œ ์ด๊ฒƒ์„ ์ถ”์ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?
์›นํŒฉ์— ๋Œ€ํ•ด ์กฐ๊ธˆ์ด๋‚˜๋งˆ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค

@prijindal ,

@jthoms1 ์ด ์ด ์ง€์ ์—์„œ ์ž‘์—…์„ ํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
https://github.com/driftyco/ionic/tree/adding-offline-template-compiling

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

@jthoms1๋‹˜ , ๋ฒ ํƒ€ 11 ์ด์ „์— ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ๋งˆ์Šคํ„ฐ์™€ ๋ณ‘ํ•ฉ๋ฉ๋‹ˆ๊นŒ?

๋„ค ์ €๋„ ์˜คํ”„๋ผ์ธ ์ปดํŒŒ์ผ์„ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ง€๊ธˆ์€ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์šฐ๋ฆฌ ์‚ฌ์ดํŠธ๋Š” ์™„์ „ํžˆ Ionic2 beta.8์— ์žˆ์Šต๋‹ˆ๋‹ค.
http://m.sherpadesk.com/

๋‚˜๋Š” ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์•ฑ๋„ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ ์ผ๋ถ€ ์ตœ์ ํ™”๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ณ  ์Šต๋‹ˆ๋‹ค .
๋ณด๊ณ ์„œ ๋ณด๊ธฐ https://tools.pingdom.com/#!/DW6Td/http://m.sherpadesk.com/17
๋˜ํ•œ ์‚ฌ์ดํŠธ ํฌ๊ธฐ๊ฐ€ 600% ๊ฐ์†Œํ–ˆ์Šต๋‹ˆ๋‹ค
์‚ฌ์šฉ์ž ์ƒํ˜ธ์ž‘์šฉ ์‘๋‹ต ์†๋„ 2000% ํ–ฅ์ƒ

์ข‹์€ ์ถ”์ฒœ: http://blog.angular-university.io/how-to-run-angular-2-in-production-today/36

๋ชจ๋“  ๊ฟ€๊บฝ ๊ฟ€๊บฝ ์„ค์ •๊ณผ ์•ฑ์Šคํ† ์–ด ๋งํฌ๋ฅผ ์—ฌ๊ธฐ์— ๊ฒŒ์‹œํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. http://www.sherpadesk.com/blog/

@Evgeniynet ์•„์ฃผ ์ข‹์Šต๋‹ˆ๋‹ค.

๋ช‡ ๊ฐ€์ง€ ์งˆ๋ฌธ:

  1. ์•ฑ์„ ์„ค์น˜ํ•˜๋ฉด ์ฆ‰์‹œ ์—ด๋ฆฌ์ง€๋งŒ. ํ”„๋กœํ•„์„ ๋กœ๋“œํ–ˆ๋Š”๋ฐ 5์ดˆ ๋™์•ˆ ๋ฉˆ์ถ˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์™œ์š”?
  2. ์˜คํ”„๋ผ์ธ ์ปดํŒŒ์ผ ์—†์ด ๋กœ๋”ฉ ์‹œ๊ฐ„์„ ์–ด๋–ป๊ฒŒ ์ตœ์ ํ™”ํ–ˆ์Šต๋‹ˆ๊นŒ?
  3. ๊ท€ํ•˜์˜ ๋ชจ๋ฐ”์ผ ์›น์‚ฌ์ดํŠธ๋Š” ionic2์ž…๋‹ˆ๊นŒ?
  4. ๋ฐ์Šคํฌํƒ‘ ์›น์‚ฌ์ดํŠธ๊ฐ€ ionic2์ž…๋‹ˆ๊นŒ?

ionic 2๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ์ƒ๊ฐํ•˜๊ณ  ์žˆ์ง€๋งŒ webapp ํ”„๋กœ์ ํŠธ + ๋ชจ๋ฐ”์ผ ionic2 ํ”„๋กœ์ ํŠธ๋ฅผ ๊ด€๋ฆฌํ•ด์•ผ ํ•˜๋Š” ์œ ์ผํ•œ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”

@evgeniynet ๋…ธ๋“œ์—์„œ ์ œ๊ณตํ•ฉ๋‹ˆ๊นŒ?
๋ฏธ๋ฆฌ ์ปดํŒŒ์ผ ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ์žฅ์น˜ ์Šคํ† ๋ฆฌ์ง€ ํ˜ธ์ŠคํŒ…(phonegap ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜)์ด ๋ฉ๋‹ˆ๋‹ค.

@dheran , ์•„๋‹ˆ์š”, Azure ์›น ์‚ฌ์ดํŠธ์—์„œ ํ˜ธ์ŠคํŒ…๋˜๋ฉฐ ionic 2 gulp ๋นŒ๋“œ ์ž‘์—…์œผ๋กœ ์ƒ์„ฑ๋œ ์ผ๋ฐ˜ html ๋ฐ js ํŒŒ์ผ๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค.

@justme1

  1. ์˜ˆ, ๋‚˜๋Š” http://www.bennadel.com/blog/3105-creating-a-pre-bootstrap-loading-screen-in-angular-2-rc-1.htm์œผ๋กœ ์†์ž„์ˆ˜๋ฅผ

๊ท€ํ•˜์˜ ๋ชจ๋ฐ”์ผ ์›น์‚ฌ์ดํŠธ๋Š” ionic2์ž…๋‹ˆ๊นŒ?
์˜ˆ

๋ฐ์Šคํฌํƒ‘ ์›น์‚ฌ์ดํŠธ๊ฐ€ ionic2์ž…๋‹ˆ๊นŒ?
์˜ˆ

๋‚ด ios ์•ฑ์€ webview์—์„œ ์‚ฌ์ดํŠธ๋ฅผ ๋กœ๋“œํ•  ๋ฟ ๊ทธ ์ด์ƒ์€ ์•„๋‹™๋‹ˆ๋‹ค.

iOS, Android ๋ฐ Windows Phone, ์›น ์•ฑ, Chrome ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ ๋ฐ Apple iWatch๋ฅผ ์œ„ํ•œ ๋‹จ ํ•˜๋‚˜์˜ ์ฝ”๋“œ๋ฒ ์ด์Šค

gap:// ์˜ค๋ฅ˜๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์ฝ”๋ฅด๋„๋ฐ” ๋กœ๋“œ๋ฅผ ์ค‘์ง€ํ•˜๋Š” ํŠน์ˆ˜ ํ”Œ๋ž˜๊ทธ๋ฅผ ์„ค์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

http://www.sherpadesk.com/blog/ ์— ์ด์— ๋Œ€ํ•œ ์™„์ „ํ•œ ๊ฐ€์ด๋“œ๋ฅผ ์ž‘์„ฑ ์ค‘์ž…๋‹ˆ๋‹ค

@evgeniynet

  1. ์ด๊ฒƒ์ด ์‚ฌ์‹ค์ด๋ผ๋ฉด ์‹ค์ œ๋กœ ๋” ๋น ๋ฅธ ๋กœ๋”ฉ์ด ์•„๋‹Œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค :-)

ํ•˜๋‚˜์˜ ์ฝ”๋“œ๋ฒ ์ด์Šค์— ๋Œ€ํ•ด:

๋‚ด๊ฐ€ ์ดํ•ด ํ•œ ๋ฐ”์— ๋”ฐ๋ฅด๋ฉด ionic2๋Š” ๋ธŒ๋ผ์šฐ์ €์—์„œ ์™„์ „ํžˆ ์ง€์›๋˜๋ฏ€๋กœ ๋ฐ์Šคํฌํ†ฑ ์›น ์‚ฌ์ดํŠธ๋กœ ์‚ฌ์šฉํ•ด์„œ๋Š” ์•ˆ๋ฉ๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๊ฐ€ ๋งˆ์Œ์— ๋“ค์ง€ ์•Š์Šต๋‹ˆ๊นŒ?

์ด ๊ธฐ๋Šฅ์„ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๋™์•ˆ ์ €๋ฅผ ๋ฏฟ์œผ์‹ญ์‹œ์˜ค.

์•ˆ๋…•ํ•˜์„ธ์š”, ์ด๊ฒƒ์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?
๋‚˜๋Š” ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค :
์ฝ”๋ฅด๋„๋ฐ” CLI: 6.3.0
Ionic Framework ๋ฒ„์ „: 2.0.0-beta.10
Ionic CLI ๋ฒ„์ „: 2.0.0-beta.35
Ionic ์•ฑ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฒ„์ „: 2.0.0-beta.19
LG ๋„ฅ์„œ์Šค 5(OS 6.0)
์‚ฌ์ด๋“œ ๋ฉ”๋‰ด ํŠœํ† ๋ฆฌ์–ผ ์•ฑ v1์€ 3์ดˆ ๋งŒ์— ๋กœ๋“œ๋ฉ๋‹ˆ๋‹ค.
--v2 ์‚ฌ์ด๋“œ ๋ฉ”๋‰ด ๋กœ๋“œ 6์ดˆ

์‚ฌ์ „ ์ปดํŒŒ์ผ ๊ธฐ๋Šฅ์€ ๋ฒ ํƒ€ 12์—์„œ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์ดˆ๊ธฐ ๋กœ๋“œ ์†๋„๊ฐ€ ํฌ๊ฒŒ ๋นจ๋ผ์ง€๊ณ  ๋ฒˆ๋“ค ํฌ๊ธฐ๊ฐ€ ํฌ๊ฒŒ ์ค„์–ด๋“ญ๋‹ˆ๋‹ค. ๋ฒ ํƒ€ 11์„ ์ถœ์‹œํ•  ์˜ˆ์ •์ด๋ฏ€๋กœ ๋‹ค์Œ ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์šฐ๋ฆฌ์˜ ์ตœ์šฐ์„  ๊ณผ์ œ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ง€์ ์—์„œ ์ž‘์—…ํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ ๊ฐ€๊น์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

์ฒ˜์Œ์œผ๋กœ ์ •๋ง ๋Š๋ฆฝ๋‹ˆ๋‹ค. ์ตœ์ ํ™”๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๋Š” ์ค‘

@danbucholtz ๋˜๋Š” ๋ˆ„๊ตฌ๋‚˜ ์ด ๋ฌธ์ œ๋ฅผ ๋ฒ ํƒ€ 12 ๋งˆ์ผ์Šคํ†ค์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

@danbucholtz ๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‚˜์š”? ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ๋ฒ ํƒ€ 12 ๋ฆด๋ฆฌ์Šค๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆด ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. :-(
๋นจ๋ฆฌ ํ’€์–ด์ฃผ์„ธ์š”..

@dheran ,

์ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์—๋Š” ์•„์ง ์ถœ์‹œ๋˜์ง€ ์•Š์€ Angular RC 5๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋ฒ ํƒ€ 12๊ฐ€ ์ค€๋น„๋˜๋Š” ๋Œ€๋กœ ์ถœ์‹œํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ค€๋น„๊ฐ€ ๋  ๋•Œ๊นŒ์ง€ ์ถœ์‹œํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ข‹์€ ๋‹จ๊ธฐ ์ˆ˜์ •์€ ์•„๋ž˜์™€ ๊ฐ™์ด ์ธ๋ผ์ธ ํ…œํ”Œ๋ฆฟ์„ ์‚ฌ์šฉํ•˜๋„๋ก ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋‹จ๊ธฐ์ ์œผ๋กœ ๋” ๋น ๋ฅผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์„ ์‹œ๋„ํ•˜๊ณ  ๊ทธ๊ฒƒ์ด ๋‹น์‹ ์„ ์œ„ํ•ด ์ผ์„ ๊ฐ€์†ํ™”ํ•˜๋Š”์ง€ ๋ณด์‹ญ์‹œ์˜ค.

@Component({
   template: `
   <ion-content>
      <div>content</div>
   </ion-content>
  `
})
export MyClass {
}

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

@danbucholtz ์ธ๋ผ์ธ์€ ์‹ค์ œ๋กœ ๋งŽ์€ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.
๋นŒ๋“œํ•˜๋Š” ๋™์•ˆ ์ˆ˜ํ–‰ํ•˜๋Š” gulpfile.js์— ์ž‘์€ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

gulp.task('build', ['build:prequel'], function(done) {
  glob('./www/build/**/*.html', function(e,files) {
    var indexPath = './www/build/js/app.bundle.js'
    var js = fs.readFileSync(indexPath, 'utf8');

    async.eachSeries(files, function(file, callback) {
      filename = file.substr(6)
      var html = fs.readFileSync(file, 'utf8');
      js = js.replace("templateUrl: '" + filename + "'", "template: `" + html +"`")
      callback()
    }, function() {
      fs.writeFile(indexPath, js, 'utf8', function(err, data) {
        done()
      });
    })
  })
})

์˜ˆ, ์ด๊ฒƒ์€ ๊นจ๋—ํ•˜์ง€ ์•Š์œผ๋ฉฐ ๊ทธ๋ ‡๊ฒŒํ•˜๋Š” ๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ•์ด ์•„๋‹™๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๊ฒƒ์€ ๋งค๋ ฅ์ฒ˜๋Ÿผ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์ถ”์‹ : ์ธ๋ผ์ธ์€ ์ดˆ๊ธฐ ์‹œ์ž‘์— ๋งŽ์€ ๋„์›€์ด ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค(์ตœ๋Œ€ 0.5์ดˆ). ๊ทธ๋Ÿฌ๋‚˜ ํŽ˜์ด์ง€ ์ „ํ™˜ ์‚ฌ์ด ๋˜๋Š” ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ๋™์ ์œผ๋กœ ๋กœ๋“œํ•  ๋•Œ๋งˆ๋‹ค ๋” ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

@prijindal , ์ข‹์•„์š”! ๊ต‰์žฅํ•ด! ๋ฒ ํƒ€ 12์—์„œ ์ œ๊ณต๋˜๋Š” AoT ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํ…œํ”Œ๋ฆฟ์ด ์ธ๋ผ์ธ์ธ์ง€ ์™ธ๋ถ€ ํŒŒ์ผ์ธ์ง€๋Š” ์ค‘์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋นŒ๋“œ ํ”„๋กœ์„ธ์Šค์˜ ์ผ๋ถ€๋กœ ์ˆœ์ˆ˜ JS๋กœ ๋ณ€ํ™˜๋ฉ๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์„ ์•Œ์•„๋‚ด๋Š” ์ข‹์€ ์ผ!

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

์•ˆ๋…•ํ•˜์„ธ์š”, Angular ํŽ˜์ด์ง€๋ฅผ ํ™•์ธํ–ˆ๋Š”๋ฐ RC5๊ฐ€ ์ถœ์‹œ๋œ ๊ฒƒ์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. "rc5๊ฐ€ ๋‚˜์˜ฌ ๋•Œ๊นŒ์ง€"๋Š” ๋ฌด์Šจ ๋œป์ธ๊ฐ€์š”?

@kLkA , @dheran Ionic ํŒ€์—๊ฒŒ ํœด์‹์„ ์ฃผ์‹ญ์‹œ์˜ค - ๊ทธ๋“ค์€ ๊ฐ€๋Šฅํ•œ ํ•œ ๋นจ๋ฆฌ ๋ฒ ํƒ€๋ฅผ ์น˜๋Š” ๊ฒƒ์€ ์–ด๋–ค ์‹์œผ๋กœ๋“  ๋„์›€์ด ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ Angular์—์„œ Google๊ณผ ์ง์ ‘ ์ž‘์—…ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ Angular2 rc5๊ฐ€ ์ข…๋ฃŒ๋˜์—ˆ์Œ์„ ํ™•์‹คํžˆ ์•Œ๊ณ  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ, Google์€ ๋ถˆ๊ณผ ๋ช‡ ์‹œ๊ฐ„ ์ „์— rc 5๋ฅผ ์ถœ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค.
๋‚˜๋Š” ๊ทธ๋“ค์ด ๋ฆด๋ฆฌ์Šค๋ฅผ ์•Œ๊ณ  ์žˆ๊ณ  ๋ฒ ํƒ€ 12์— ๋“ค์–ด๊ฐ€๊ธฐ ์œ„ํ•ด ๋ญ”๊ฐ€๋ฅผ ํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.

@์•„์Šคํ…Œ ์ •๋ง์š”? ๋‹น์‹ ์ด ์šฐ๋ฆฌ์˜ ์ž…์žฅ์ด ์•„๋‹ˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.
์ด ๋ฌธ์ œ๋กœ ์ธํ•ด ๊ฒŒ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ์œ„์น˜์— ์žˆ์Šต๋‹ˆ๊นŒ?
์ œ ๋Œ“๊ธ€์„ ์ž˜ ์ฝ์–ด๋ณด์‹œ๋ฉด. Ionic ํŒ€์—๊ฒŒ AoT ํŒจ์น˜ + ์šฐ์„  ์ˆœ์œ„๊ฐ€ ์•„๋‹Œ ๊ธฐํƒ€ ๋ฒ„๊ทธ ์ˆ˜์ • ๋Œ€์‹  AoT ํŒจ์น˜(danbucholtz๋Š” ๋ณ„๋„์˜ ๋ถ„๊ธฐ์—์„œ ์ˆ˜ํ–‰๋˜์—ˆ๋‹ค๊ณ  ํ•จ)๋ฅผ ๋น ๋ฅธ ๋ฆด๋ฆฌ์Šค๋กœ ๋ฆด๋ฆฌ์Šคํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๋ฌผ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๊ท€ํ•˜์—๊ฒŒ ์šฐ์„ ์ˆœ์œ„๊ฐ€ ์•„๋‹ˆ๊ณ  ์šฐ๋ฆฌ์˜ ๋Œ“๊ธ€์ด ์ŠคํŒธ์„ ๋ฐœ์†กํ–ˆ๋‹ค๋ฉด ๊ตฌ๋… ์ทจ์†Œ๋ฅผ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.

@dheran , ์ €๋Š” ์ดˆ๊ธฐ ๋ฒ ํƒ€์—์„œ ๊ท€ํ•˜์˜ ์ž…์žฅ์— ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฑฐ์˜ ๋‹ค

์ด๊ฒƒ์€ ๊ท€ํ•˜์˜ ํ•„์š”์™€ ๊ฒฝํ—˜์„ ๊ฒŒ์‹œํ•˜๋Š” ์Šค๋ ˆ๋“œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ์ฃผ์ œ์— ์ถฉ์‹คํ•˜๊ฑฐ๋‚˜ ๊ทธ๋Œ€๋กœ ๋‘์‹ญ์‹œ์˜ค. ๐Ÿ‘

ionic2 beta12๋ฅผ ๊ธฐ๋Œ€ํ•ฉ๋‹ˆ๋‹ค. ์ตœ๊ณ ์˜ ํŒ€์ž…๋‹ˆ๋‹ค :)

์•ˆ๋…•ํ•˜์„ธ์š” @dheran! ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ์ขŒ์ ˆ๊ฐ์„ ๋Š๊ผˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ์ตœ์„ ์„ ๋‹คํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ํ˜„์žฌ ๋งค์šฐ ๊ฐ€๊น๊ณ  ๋ช‡ ๊ฐ€์ง€ ๋‹ค๋ฅธ ์ค‘์š”ํ•œ ๋ฒ„๊ทธ์™€ ํ•จ๊ป˜ beta.12 ๋ฆด๋ฆฌ์Šค์— ํฌํ•จ๋  ๊ฒƒ์ด๋ผ๊ณ  ๊ธฐ์˜๊ฒŒ ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ˆ˜์ •. ์šฐ๋ฆฌ๋Š” ์ด๊ฒƒ์„ ๋” ์ผ์ฐ ๊ณต๊ฐœํ•˜๊ณ  ์‹ถ์—ˆ์ง€๋งŒ ์šฐ๋ฆฌ๋Š” aot ์ปดํŒŒ์ผ์ด ์ž‘๋™ํ•˜์ง€ ์•Š๊ฒŒ ํ•˜๋Š” ์ผ๋ถ€ ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ •ํ•˜๊ธฐ ์œ„ํ•ด ์ง€๋‚œ ๋ช‡ ์ฃผ ๋™์•ˆ angular์™€ ํ•จ๊ป˜ ์ž‘์—…ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๋จผ์ € ์ƒˆ๋กœ์šด aot ์ปดํŒŒ์ผ์„ ์œ„ํ•ด Ionic์„ ์ตœ์ ํ™”ํ•˜๊ณ  ๋‘ ๋ฒˆ์งธ๋กœ Angular 2 RC5์™€ ํ•จ๊ป˜ ์ž‘๋™ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๋ชจ๋“  ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ ์šฉํ•˜๋Š” ๋ฐ ์‹œ๊ฐ„์ด ์ข€ ๊ฑธ๋ ธ์Šต๋‹ˆ๋‹ค. ์œ„์—์„œ ์–ธ๊ธ‰ํ•œ ๋ธŒ๋žœ์น˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•  ์ˆ˜ ์—†๋Š” ์ด์œ ๋Š” ์•ฑ์„ ์‹ค์ œ๋กœ ๋นŒ๋“œํ•˜๊ธฐ ์œ„ํ•œ ๊ฟ€๊บฝ๊ฟ€๊บฝ ์ž‘์—…์ด ์•„์ง ์™„์ „ํžˆ ์™„๋ฃŒ๋˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ธฐ์ˆ ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜๋Š” ์žˆ์ง€๋งŒ ์‹ค์ œ๋กœ ์•ฑ์„ ๋นŒ๋“œํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ž ์‹œ ๋™์•ˆ Angular 2 rc5์˜ ์‹œํ—˜ํŒ ๋ฒ„์ „์œผ๋กœ ์ž‘์—…ํ•ด ์™”์ง€๋งŒ ํฌํ•จ๋œ ๋ฆด๋ฆฌ์Šค๋ฅผ ํŽธ์•ˆํ•˜๊ฒŒ ๋Š๋ผ๊ธฐ ์ „์— ๋‹ค๋ฅธ ๋ชจ๋“  ์‚ฌ๋žŒ๋“ค์ฒ˜๋Ÿผ ํ•ด๋‹น ๋ฆด๋ฆฌ์Šค๊ฐ€ ๊ณต๊ฐœ๋  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ ค์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์•„์ง ๋ฒ ํƒ€ ๋‹จ๊ณ„์— ์žˆ์œผ๋ฉฐ, ์ด๋Š” ์ž‘์—… ์ค‘์ด๋ฉฐ ๋ณ€๊ฒฝ๋  ๊ฒƒ์ž„์„ ์˜๋ฏธํ•˜๋ฉฐ ๋ฒ ํƒ€ ์†Œํ”„ํŠธ์›จ์–ด์™€ ๊ด€๋ จํ•˜์—ฌ ๊ฒŒ์ž„์˜ ์ด๋ฆ„์ผ ๋ฟ์ž…๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰์œผ๋กœ, ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค๊ณผ ๊ต๋ฅ˜ํ•  ๋•Œ ํ–‰๋™ ๊ฐ•๋ น ์„ ์—ผ๋‘์— ๋‘์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? Ionic์„ ์‚ฌ์šฉํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ๋˜ํ•œ ์–ด๋–ค ์ž‘์—…์ด ์ง„ํ–‰ ์ค‘์ธ์ง€ ์•Œ๊ณ  ์‹ถ๋‹ค๋ฉด ํšŒ์˜ ๋…ธํŠธ (ํŠธ์œ„ํ„ฐ์—์„œ๋„ ๊ณต์œ ๋จ)์™€ ๋กœ๋“œ๋งต์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ™•์‹คํ•˜์ง€ ์•Š์ง€๋งŒ ์•„๋งˆ๋„ ionic ์†๋„๋ฅผ ๋†’์ด๋Š” ์ฃผ์š” ์ง„์ „์€ ngmodule ๋ถ„๊ธฐ ์—์„œ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ์ž˜๋ชป?

์ข‹์€ ์ž๋ฆฌ @msaelices ! ์‚ฌ์‹ค, ์ด ํ”„๋ ˆ์ž„์›Œํฌ ์ธก๋ฉด์˜ ๋Œ€๋ถ€๋ถ„์€ ํ˜„์žฌ https://github.com/driftyco/ionic/commits/deeplinks-ngmodule ์—์„œ ์ˆ˜ํ–‰๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌ ํ•ด์š”!

๋‚˜์—๊ฒŒ ๋ฌธ์ œ๋Š” ์ดˆ๊ธฐ ๋กœ๋”ฉ(๋ถ€ํŠธ์ŠคํŠธ๋ž˜ํ•‘ ๋™์•ˆ)์ด ์•„๋‹ˆ๋ผ ์‚ฌ์šฉ์ž๊ฐ€ ๋ฐฉ๋ฌธํ•˜์ง€ ์•Š์€ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•  ๋•Œ๋งˆ๋‹ค ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

์ด AoT ์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ionic์ด ๋˜๊ธฐ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๋™์•ˆ ๋ชจ๋“  ๊ตฌ์„ฑ ์š”์†Œ(๋ชจ๋“  @Component )๋ฅผ ์‚ฌ์šฉํ•˜๋Š” TemplatePrecompiler ๋ผ๋Š” _splash_ ํ™”๋ฉด(์•ฑ ๋กœ๊ณ ๊ฐ€ ์žˆ๋Š” ionic ํŽ˜์ด์ง€)์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค @Component ๋‚ด ์•ฑ์˜
์‚ฌ์šฉ์ž๊ฐ€ ์Šคํ”Œ๋ž˜์‹œ ํ™”๋ฉด์„ ๋ณด๊ธฐ๋งŒ ํ•˜๋ฉด ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฌ์ง€๋งŒ(๋‚ด ์•ฑ์˜ ๊ฒฝ์šฐ ~5์ดˆ) ๋กœ๋“œ๋˜๋ฉด ๋ชจ๋“  ํ™”๋ฉด์ด ๋น ๋ฅด๊ฒŒ ์ด๋™ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ •๋ง ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ ์‹œ์ž‘ ํ™”๋ฉด์— ์ง„ํ–‰๋ฅ  ํ‘œ์‹œ์ค„์„ ๋„ฃ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์— ์š”์ ์„ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. https://gist.github.com/voliva/eb0242743661000896054601af72d1fd

๋ชจ๋“  ์‚ฌ๋žŒ์—๊ฒŒ ์ตœ์‹  ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ์ ๊ทน์ ์œผ๋กœ ์ž‘์—…ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ์˜ˆ์ƒํ–ˆ๋˜ ๊ฒƒ๋ณด๋‹ค ๋” ํฐ ๋…ธ๋ ฅ์ด ์žˆ์—ˆ์ง€๋งŒ ์šฐ๋ฆฌ๋Š” ์•ž์œผ๋กœ ๋‚˜์•„๊ฐ€๊ณ  ๋” ๊ฐ€๊นŒ์ด ๋‹ค๊ฐ€๊ฐ€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” AoT์— ํ•„์š”ํ•œ ๋ชจ๋“  ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์žˆ๋Š” ๋งˆ์Šคํ„ฐ๋ณด๋‹ค ๊ฑฐ์˜ 200๊ฐœ ์ •๋„ ์ปค๋ฐ‹ ๋œ ๋ถ„๊ธฐ ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค ๐Ÿ˜„

์ด๊ฒƒ์€ ๊ณง ๋‚˜์˜ฌ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ด๊ฒƒ์„ ๋‚ด๋ถ€์ ์œผ๋กœ ํ…Œ์ŠคํŠธํ•˜๊ธฐ ์‹œ์ž‘ํ•˜๋Š” ์ง€์ ์— ์ด๋ฅด๋ €์Šต๋‹ˆ๋‹ค. ์•„์ง ๊ณต๊ฐœ ํ…Œ์ŠคํŠธ๋ฅผ ํ•  ์ค€๋น„๊ฐ€ ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์šฐ๋ฆฌ์˜ ๊ฐ€์žฅ ๋†’์€ ์šฐ์„ ์ˆœ์œ„ ํ•ญ๋ชฉ์ด๋ฉฐ ์ „์ฒด ํ”„๋ ˆ์ž„์›Œํฌ ํŒ€์ด ์ด ์ž‘์—…์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ์—ด์‹ฌํžˆ ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์•„์ง ํƒ€์ž„๋ผ์ธ์€ ์—†์ง€๋งŒ, ์šฐ๋ฆฌ๊ฐ€ ๊ฑฐ๊ธฐ์— ๋„๋‹ฌํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ๋งํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ƒˆ๋กœ์šด ์ •๋ณด๊ฐ€ ์žˆ๋Š” ๋Œ€๋กœ ์ด ์Šค๋ ˆ๋“œ๋ฅผ ๊ณ„์† ์—…๋ฐ์ดํŠธํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

+1

๊ทธ๋ฆฌ๊ณ  ๋‚ด app.bundle.js๋Š” 3.8MB์ž…๋‹ˆ๋‹ค.

+1
๋ฒ ํƒ€12๋Š” ๋ช‡์‹œ์— ์ถœ์‹œ๋˜๋‚˜์š”? @danbucholtz

ํ…œํ”Œ๋ฆฟ์„ Component์— ๋„ฃ๋Š” @prijindal ์˜ ์ ‘๊ทผ ๋ฐฉ์‹๊ณผ ๊ด€๋ จํ•˜์—ฌ ์˜คํ”„๋ผ์ธ ์ปดํŒŒ์ผ์—์„œ ์˜ˆ์ƒ๋˜๋Š” ๊ฒƒ๊ณผ ๋™์ผํ•œ ์ตœ์ ํ™” ์ˆ˜์ค€์ด ๋ ๊นŒ์š”?
์ด ์ ‘๊ทผ ๋ฐฉ์‹์„ ์‹œ๋„ํ–ˆ๋Š”๋ฐ ํ…œํ”Œ๋ฆฟ์„ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•œ HTTP ์š”์ฒญ ์‹œ๊ฐ„์„ ์ ˆ์•ฝํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์ฒซ ๋ฒˆ์งธ ๋ณด๊ธฐ ๋กœ๋“œ์—๋Š” ์—ฌ์ „ํžˆ ์ง€์—ฐ์ด ์žˆ์Šต๋‹ˆ๋‹ค. Angular๊ฐ€ ์ฒซ ๋ฒˆ์งธ ๋ทฐ ๋กœ๋“œ์—์„œ ํ…œํ”Œ๋ฆฟ์˜ ์‚ฌ์šฉ์ž ์ •์˜ html์„ ์ปดํŒŒ์ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๋Ÿฐ ์ผ์ด ๋ฐœ์ƒํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” angular์— ์•„์ฃผ ์ต์ˆ™ํ•˜์ง€ ์•Š์œผ๋ฉฐ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์ด๊ฒƒ์„ ๋‚˜์—๊ฒŒ ๋ช…ํ™•ํžˆ ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

@moatazelgamal ,

AoT ์ปดํŒŒ์ผ์€ ์ƒ๋‹นํ•œ ์†๋„ ํ–ฅ์ƒ์„ ๊ฐ€์ ธ์˜ฌ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์ธ ์•ฑ์šฉ ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ๋ฏธ๋ฆฌ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ๋ช‡ ์ดˆ๊ฐ€ ๊ฑธ๋ฆฌ๋ฏ€๋กœ ๋Ÿฐํƒ€์ž„์—์„œ ์‹œ๊ฐ„์ด ๋‹จ์ถ•๋ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์ธ ์•ฑ์˜ ๊ฒฝ์šฐ ์–ผ๋งˆ๋‚˜ ๋น ๋ฅผ์ง€ ๋งํ•˜๊ธฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์•„์ฃผ ๊ธฐ๋ณธ์ ์ธ ์ƒ˜ํ”Œ์—์„œ๋งŒ ํ…Œ์ŠคํŠธํ–ˆ์œผ๋ฉฐ ์‹œ์ž‘ ์‹œ๊ฐ„์€ ~3์ดˆ์—์„œ ~300ms๋กœ ๋Š˜์–ด๋‚ฌ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ผ๋ฐ˜์ ์ธ ์•ฑ์— ์–ด๋–ค ์ข…๋ฅ˜์˜ ์ˆซ์ž๊ฐ€ ํ‘œ์‹œ๋˜๋Š”์ง€ ์•Œ๊ธฐ ์œ„ํ•ด ์ถฉ๋ถ„ํ•œ ํ…Œ์ŠคํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š์•˜์ง€๋งŒ ๊ฐ€์žฅ ํ™•์‹คํ•˜๊ฒŒ ๋” ๋น ๋ฅผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

AoT์— ๋Œ€ํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ํ”„๋ ˆ์ž„์›Œํฌ์— ์ ์šฉ๋˜์—ˆ์œผ๋ฉฐ(์ง€๊ธˆ๊นŒ์ง€๋Š”... ๋„ˆ๋ฌด ์ข‹์•˜์Šต๋‹ˆ๋‹ค ๐Ÿ˜„) ์ด์ œ ๋นŒ๋“œ ํ”„๋กœ์„ธ์Šค๋ฅผ A) ๊ฐ„๋‹จํ•˜๊ณ , B) ํ™•์žฅ ๊ฐ€๋Šฅํ•˜๊ณ , C) ์ตœ๋Œ€ํ•œ ๋น ๋ฅด๊ฒŒ ๋งŒ๋“œ๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ์ „ํ™˜ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํŒ€๊ณผ ์ €๋Š” ์ด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์—์„œ ํ•จ๊ป˜ ์ž‘์—…ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ณง ๋” ๋งŽ์€ ์†Œ์‹์„ ๋“ค์„ ์ˆ˜ ์žˆ์„ ๊ฒƒ์œผ๋กœ ๊ธฐ๋Œ€ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

@moatazelgamal ๋‚ด ์ ‘๊ทผ ๋ฐฉ์‹์€ ์˜คํ”„๋ผ์ธ ์ปดํŒŒ์ผ์ด ์•„๋‹ˆ๋ผ ๋‹จ์ˆœํžˆ ํ…œํ”Œ๋ฆฟ์„ ์ธ๋ผ์ธํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์˜คํ”„๋ผ์ธ ์ปดํŒŒ์ผ์€ ์ดˆ๊ธฐ ๋กœ๋”ฉ์„ ํ›จ์”ฌ ๋” ๋น ๋ฅด๊ฒŒ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ชจ๋‘,

ํ˜„์žฌ ๋‚ด๋ถ€์ ์œผ๋กœ ์ด๋ฅผ ์ฒ ์ €ํžˆ ํ…Œ์ŠคํŠธํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ์ฃผ์— ํฐ ์ง„์ „์„ ์ด๋ฃจ์—ˆ์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

์•ˆ๋…•ํ•˜์„ธ์š”,
Ionic2 RC0์ด ์ถœ์‹œ๋œ ๊ฒƒ์„ ๋ณด๋‹ˆ ๋ฒ ํƒ€12๊ฐ€ ์˜ˆ์ƒ๋˜๋Š” ๊ฑด๊ฐ€์š”? RC0์˜ ๋ณ€๊ฒฝ ๋กœ๊ทธ ์—๋Š” AOT ์ปดํŒŒ์ผ์— ๋Œ€ํ•œ ์–ธ๊ธ‰์ด ์—†์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์€ ์ฒด์ธ์ง€๋กœ๊ทธ์—์„œ ๋†“์น˜๊ธฐ์—๋Š” ๋„ˆ๋ฌด ์ข‹์€ ๊ฒƒ ๊ฐ™์•„์š” :)

"์ถœ์‹œ"๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์—ฌ์ „ํžˆ ๐Ÿ˜„ ๋ณ€๊ฒฝ ๋กœ๊ทธ ๋“ฑ์œผ๋กœ ๊ณต๋ฐฑ์„ ์ฑ„์šฐ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ค๋Š˜ ๋‚˜์ค‘์— ๊ณต์‹ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ๊ธฐ๋Œ€ํ•˜์„ธ์š”. ์–ด์ œ ๊ธฐ์ˆ ์ ์ธ ์–ด๋ ค์›€์— ๋ถ€๋”ชํ˜€ ์กฐ๊ธˆ ๋Šฆ์–ด์กŒ์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

์•ˆ๋…•ํ•˜์„ธ์š” ์•„์ด์˜ค๋‹‰ํŒ€์ž…๋‹ˆ๋‹ค! ๋‹น์‹ ์˜ ๋…ธ๊ณ ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค!

์ด๊ฒƒ์— ๋Œ€ํ•ด ๋งค์šฐ ํฅ๋ถ„๋ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์— ๋Œ€ํ•ด ์ฒ˜์Œ ์ฝ์€ ์ดํ›„๋กœ ํŠธ์œ—์„ ๋ฉˆ์ถœ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
์•„์ด์˜ค๋‹‰ ํŒ€์„ ์‘์›ํ•ฉ๋‹ˆ๋‹ค.

2016๋…„ 9์›” 29์ผ ๋ชฉ์š”์ผ 04:19 gisinaction [email protected]์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ผ์Šต๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” ์•„์ด์˜ค๋‹‰ํŒ€์ž…๋‹ˆ๋‹ค! ๋‹น์‹ ์˜ ๋…ธ๊ณ ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค!

โ€”
์ด ์Šค๋ ˆ๋“œ์— ๊ฐ€์ž…ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด ๋ฉ”์‹œ์ง€๋ฅผ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/driftyco/ionic/issues/6776#issuecomment -250346182,
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AAxEjznTYrcKZKFD2rElIqKkWrGIvvUrks5quxIvgaJpZM4Iuokt
.

์šฐ์„ , ์ด ์—„์ฒญ๋‚œ ๋ฐœ์ „์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค!
์ €๋Š” ์ƒˆ ๋ฒ„์ „์„ ํ…Œ์ŠคํŠธํ•ด ์™”์œผ๋ฉฐ ์ด์ œ ์ดˆ๊ธฐ ๋กœ๋”ฉ์ด ๋” ๋น ๋ฅด๊ฒŒ ๋Š๊ปด์ง‘๋‹ˆ๋‹ค.

์ €์‚ฌ์–‘ ์•ˆ๋“œ๋กœ์ด๋“œ 4.4.4์—์„œ๋„ ์„ฑ๋Šฅ์ฐจ์ด๋ฅผ ๋” ์ž˜ ๋Š๋ผ๋ฉฐ ์•„์ด์˜ค๋‹‰ 1๊ณผ ๋น„๊ตํ•ด์„œ ํ…Œ์ŠคํŠธ ํ•ด๋ดค์Šต๋‹ˆ๋‹ค.
Ionic 2-rc0์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋Œ€๋žต์ ์ธ ๊ฒฐ๊ณผ๋ฅผ ์ฐพ์•˜์Šต๋‹ˆ๋‹ค.

| ํ”„๋กœ์ ํŠธ | ์ฝœ๋“œ ๋ถ€ํŒ… | ํ•ซ ๋ถ€ํŒ… |
| --- | --- | --- |
| ionic1-ํƒญ | 4.5์ดˆ | 3์ดˆ |
| ionic2 ํƒญ | 5์ดˆ | 3.5์ดˆ |
| ionic1 ์‚ฌ์ด๋“œ ๋ฉ”๋‰ด | 5์ดˆ | 3.5์ดˆ |
| ionic2 ์‚ฌ์ด๋“œ ๋ฉ”๋‰ด | 5์ดˆ | 3.5์ดˆ |
| ์‹œ๊ณ„(๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ) | 1์ดˆ | <1์ดˆ |

  • ๋‹ค์Œ ๋ช…๋ น์œผ๋กœ ์ƒ์„ฑ๋œ ํ”„๋กœ์ ํŠธ:
ionic start myTabs1 tabs
ionic start myTabs2 tabs --v2
ionic start mySidemenu1 sidemenu
ionic start mySidemenu2 sidemenu --v2

ํ”„๋กœ์ ํŠธ๊ฐ€ ์™„์ „ํžˆ ๋™์ผํ•œ ๊ตฌํ˜„์€ ์•„๋‹ˆ์ง€๋งŒ ๋น„๊ต๋ฅผ ์œ„ํ•œ ์ถœ๋ฐœ์ ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

ionic 2-rc0์„ ์‚ฌ์šฉํ•˜๋”๋ผ๋„ ๊ธฐ๋ณธ ํ”„๋กœ์ ํŠธ๋Š” ์ฝœ๋“œ์—์„œ ๋กœ๋“œํ•˜๋Š” ๋ฐ ์•ฝ 5์ดˆ๊ฐ€ ํ•„์š”ํ•˜๊ณ  ์ด์ „์— ์ด๋ฏธ ๋กœ๋“œ๋œ ๊ฒฝ์šฐ์—๋Š” ์•ฝ 3.5์ดˆ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ Ionic 1 ๋ฒ„์ „์—์„œ ์ฐพ์€ ์‹œ๊ฐ„๊ณผ ๊ฑฐ์˜ ๊ฐ™์Šต๋‹ˆ๋‹ค.
Ionic2 RC0์„ ์†Œ๊ฐœ ํ•˜๋Š”

๋‚จ์€ ์ดˆ๊ฐ€ ์–ด๋””์— ์†Œ๋น„๋˜๋Š”์ง€ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ? (์˜ˆ: Javascript ์—”์ง„/webview ์‹œ์ž‘, Cordova ํ”Œ๋Ÿฌ๊ทธ์ธ, Angular 2 ๋กœ๋”ฉ, ...)?

๊ธฐ๋ณธ ์•ฑ์— ๋” ๊ฐ€๊นŒ์šด ๊ฒฝํ—˜์„ ์ œ๊ณตํ•˜๋„๋ก ์ด ์‹œ๊ฐ„์„ ์ตœ์ ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@SynerG , ์ข‹์€ ์ •๋ณด์ž…๋‹ˆ๋‹ค. ์ง€๊ธˆ์€ ๋‹ค๋ฅธ ๊ฒƒ๋“ค๋กœ ์ธํ•ด ์•ฝ๊ฐ„ ๋ถ€์กฑํ•˜์ง€๋งŒ ๊ณง ๋” ๋งŽ์€ ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ›๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ •๋ฆฌํ•ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

์‚ฌ์ด๋“œ ๋ฉ”๋‰ด๊ฐ€ ์žˆ๋Š” ์ƒˆ๋กœ์šด ionic2 rc-0 ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. ์ €๋Š” ionic serve --lab์„ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ ํ—ค๋”๋ฐ” ์™ผ์ชฝ์— ์žˆ๋Š” ์•„์ด์ฝ˜์„ ํด๋ฆญํ•ด๋„ ๋ฉ”๋‰ด๊ฐ€ ๋‚˜์˜ค์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์Šฌ๋ผ์ด๋“œํ•˜๊ฑฐ๋‚˜ ์Šฌ๋ผ์ด๋“œํ•˜๋Š” ๋ฉ”๋‰ด ๋„๊ตฌ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•  ๋•Œ๋งŒ

@danbucholtz RC0์„ ์ถœ์‹œํ•œ Ionic ํŒ€์— ๊ฐ์‚ฌ ์ธ์‚ฌ๋ฅผ ์ „ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค! ๋ชจ๋“  ๋ณ€๊ฒฝ์œผ๋กœ ์ธํ•ด ๋‚ด ์•ฑ์„ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•˜๋Š” ๋ฐ ์•ฝ๊ฐ„์˜ ์‹œ๊ฐ„์„ ํˆฌ์žํ•ด์•ผ ํ–ˆ์ง€๋งŒ ๋‚ด ์•ฑ์˜ ์‹œ์ž‘ ์‹œ๊ฐ„์ด ํฌ๊ฒŒ ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค! ์˜ˆ๋ฅผ ๋“ค์–ด, 3๋…„ ๋œ Samsung Galaxy 4์—์„œ ๋ฒ ํƒ€ 11์˜ ์‹œ์ž‘ ์‹œ๊ฐ„์€ ~6์ดˆ์˜€์œผ๋ฉฐ RC0์€ ~3์ดˆ๋กœ ๋‹จ์ถ•๋˜์—ˆ์Šต๋‹ˆ๋‹ค! ๊ฐœ์„ ์ด ๋„ˆ๋ฌด ์ž˜ ๋˜์–ด์žˆ์–ด์š”:)

@abhayastudios , w00t! ๊ฐ์‚ฌ ํ•ด์š”!

๋” ๋งŽ์€ ๊ฐœ์„  ์‚ฌํ•ญ๊ณผ ์ตœ์ ํ™” ๊ธฐ๋Šฅ๋„ ์ค€๋น„๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค!

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

์šฐ๋ฆฌ๋„ ๋กœ๋“œ ์‹œ๊ฐ„์„ ์•ฝ 50% ๋‹จ์ถ•ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ž˜ํ–ˆ์–ด. ์ด ํ”„๋ ˆ์ž„์›Œํฌ๋กœ ์ž‘์—…ํ•˜๋Š” ๊ฒƒ์„ ์ •๋ง ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ด๊ฒƒ์ด ๋„์›€์ด๋˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์ง€๋งŒ ์ตœ๊ทผ์— ionic์— ๋›ฐ์–ด ๋“ค์—ˆ๊ณ  2.0.0-rc.2๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ดˆ๊ธฐ๋กœ๋“œ๊ฐ€ 1.1.1์— ๊ตฌ์ถ• ๋œ ์•ฑ๊ณผ ๋น„๊ตํ•˜์—ฌ ์–ผ๋งˆ๋‚˜ ๋Š๋ฆฐ์ง€ ์•Œ์•˜์Šต๋‹ˆ๋‹ค.

@geocine ์ด์ „ v1 ์•ฑ์—์„œ ์‹œ์ž‘ ์‹œ๊ฐ„์ด ๋งค์šฐ ์ข‹์ง€๋งŒ Ionic v2๊ฐ€ ํ›จ์”ฌ ๋” ๋‚˜์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๋Š” ๋ฐ˜๋ฉด ์‹œ์ž‘ ์‹œ๊ฐ„์€ ๋‚ด ์•ฑ์—์„œ ๋งค์šฐ ๋Š๋ฆฝ๋‹ˆ๋‹ค(๋ฆด๋ฆฌ์Šค ๋นŒ๋“œ์—์„œ 5์ดˆ ์ด์ƒ ์ƒ๋Œ€์ ์œผ๋กœ Android 6.0์ด ์„ค์น˜๋œ ๋น ๋ฅธ ์žฅ์น˜). Webpack ๋นŒ๋“œ๊ฐ€ ํŠธ๋ฆฌ ์‰์ดํ‚น์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๊นŒ?

์‹ค์ œ๋กœ ๋กœ๋“œํ•˜๋Š” ๋ฐ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฌ๋Š” ๊ฒฝ์šฐ ๋กœ๋“œํ•˜๋Š” ๋™์•ˆ 1์ดˆ ์ด๋‚ด์— ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ๋Š” ์Šคํ”Œ๋ž˜์‹œ ํ™”๋ฉด์„ ์ ์–ด๋„ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ?

@geocine ๊ทธ๋ž˜์„œ ๋ณดํ†ต cordova ์Šคํ”Œ๋ž˜์‹œ ํ™”๋ฉด ํ”Œ๋Ÿฌ๊ทธ์ธ(https://github.com/apache/cordova-plugin-splashscreen)์„ ์‚ฌ์šฉํ•˜๊ณ  DeviceReady์—์„œ ์ˆจ๊น๋‹ˆ๋‹ค.

์•ฑ ์‹œ์ž‘ ์‹œ๊ฐ„์„ ์‰ฝ๊ฒŒ ํ”„๋กœํŒŒ์ผ๋งํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ? Chrome ์›๊ฒฉ ๋””๋ฒ„๊ฑฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์•ฑ์„ ํ”„๋กœํŒŒ์ผ๋งํ•˜๊ณ  ์žˆ์ง€๋งŒ ์ด๋ฏธ ์ดˆ๊ธฐํ™”๋œ ํ›„์—๋งŒ ์•ฑ์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๊ณ (๋”ฐ๋ผ์„œ ์‹œ์ž‘์„ ํ”„๋กœํŒŒ์ผ๋งํ•  ์ˆ˜ ์—†์Œ) ์•ฑ์„ ์ข…๋ฃŒํ•  ๋•Œ ๋‹ซํžˆ๋ฏ€๋กœ ์•ฑ์„ ๋‹ค์‹œ ์‹คํ–‰ํ•˜๊ณ  ํ”„๋กœํŒŒ์ผ๋งํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฐฉ๋ฒ•์œผ๋กœ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

Android์—์„œ ์•ฑ ์‹œ์ž‘ ์‹œ๊ฐ„์ด 5์ดˆ๋ฅผ ์ดˆ๊ณผํ•˜๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์–ด์„œ ์ด๋ ‡๊ฒŒ ์งˆ๋ฌธํ•ฉ๋‹ˆ๋‹ค.
ํ‰๋ฒ”ํ•œ Ionic 2 ํŠœํ† ๋ฆฌ์–ผ ์•ฑ์„ ์‚ฌ์šฉํ•ด๋„ ์ƒ๋Œ€์ ์œผ๋กœ ์„ฑ๋Šฅ์ด ์ข‹์€ ๊ธฐ๊ธฐ(Sony Z3 compact, 6.0.1)์—์„œ 4-5์ดˆ ํ›„์— ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.
๊ทธ๊ฒƒ์€ ์ •๋ง ๋Š๋ฆฝ๋‹ˆ๋‹ค(๋ช‡ ๊ฐœ์˜ ํ”Œ๋Ÿฌ๊ทธ์ธ์ด ์žˆ๋Š” ์ œ ์˜ˆ์ „ Ionic 1 ์•ฑ์€ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ 3์ดˆ ๋ฏธ๋งŒ์ด ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค).

Ionic 2 ์•ฑ ์‹œ์ž‘ ์‹œ๊ฐ„์„ (์ƒ๋‹นํžˆ) ์ค„์ผ ๊ณ„ํš์ด ์žˆ์Šต๋‹ˆ๊นŒ?
Ionic 2๋กœ ๊ฐœ๋ฐœํ•˜๋Š” ๊ฒƒ์€ ํ›Œ๋ฅญํ•˜์ง€๋งŒ ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๋‹ค๋ฅธ ํ”„๋ ˆ์ž„์›Œํฌ๋กœ ์ „ํ™˜ํ•ด์•ผ ํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค :-(

Lazy loading์— ๋Œ€ํ•œ ์ง€์›์„ ์ถ”๊ฐ€ํ•  ๊ณ„ํš์ด ์žˆ์Šต๋‹ˆ๊นŒ? ์ด๋Š” ์ดˆ๊ธฐ ๋กœ๋“œ ์‹œ๊ฐ„์„ ์ค„์ด๋Š” ๋ฐ๋„ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. webpack์„ ์‚ฌ์šฉํ•˜๋Š” Angular cli๋Š” ์ด์ œ Lazy ๋กœ๋”ฉ์„ ์ง€์›ํ•˜๋ฉฐ AoT๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ž˜ ์„ค๊ณ„๋œ Angular ์•ฑ์œผ๋กœ ๋กœ๋“œ ์‹œ๊ฐ„์„ ํฌ๊ฒŒ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Ionic์—์„œ๋„ webpack์„ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— Ionic์—์„œ๋„ ๊ฐ€๋Šฅํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ง€์—ฐ ๋กœ๋”ฉ์ด ์‹œ๊ธ‰ํ•ฉ๋‹ˆ๋‹ค.

ionic ํŒ€ ํšŒ์˜ ์˜์‚ฌ๋Š” ๊ทธ๋“ค์ด treeshaking ์—์„œ ์ž‘์—…ํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ ์•„๋งˆ๋„ ๋ฒˆ๋“ค ํฌ๊ธฐ๊ฐ€ ์ค„์–ด๋“ค๊ณ  ๋ถ€ํŒ… ์‹œ๊ฐ„์ด ์•ฝ๊ฐ„

๋‚˜๋ฌด๋ฅผ ํ”๋“œ๋Š” ๊ฒƒ์€ ์œ„๋Œ€ํ•˜์ง€๋งŒ ๊ทธ ์ •๋„๋ฐ–์— ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. Lazy loading์€ ์ค‘์š”ํ•œ ๋ณ„๊ฐœ์˜ ๊ด€์‹ฌ์‚ฌ์ด๋ฉฐ, ์ง€๊ธˆ๊นŒ์ง€ ionic ํŒ€์€ ๋‹ค๋ฅธ ๋ฌธ์ œ(์˜ˆ: https://github.com/driftyco/ionic/issues/8102)์—์„œ ๋ณธ ์˜๊ฒฌ์— ๋”ฐ๋ผ ์ด์— ๋Œ€ํ•ด ๋งŽ์€ ๊ด€์‹ฌ์„ ํ‘œ๋ช…ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ). ๋ถˆํ–‰ํžˆ๋„ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์€ ๋ชจ๋ฐ”์ผ ์•ฑ์—์„œ๋„ ๋งค์šฐ ์œ ์šฉํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์›น ์•ฑ์—์„œ๋งŒ ์œ ์šฉํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

@rob3c ๋ฐ ๊ธฐํƒ€,

์ง€์—ฐ ๋กœ๋”ฉ์€ ์šฐ๋ฆฌ๊ฐ€ ๋ณด๊ณ  ์žˆ๊ณ  ๋” ํƒ๊ตฌํ•˜๊ณ  ์‹ถ์€ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์•ž์œผ๋กœ ๋ช‡ ๋‹ฌ ์•ˆ์— ์ด ์ฃผ์ œ์— ๋Œ€ํ•ด ๋” ๋งŽ์ด ๋“ค์„ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

@danbucholtz ,
์ง€์—ฐ ๋กœ๋”ฉ ์™ธ์— ์‹œ์ž‘ ์‹œ๊ฐ„์„ ํฌ๊ฒŒ ์ค„์ผ ์ˆ˜ ์žˆ๋Š” ๋‹ค๋ฅธ ์†”๋ฃจ์…˜์„ ์ฐพ๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?

๋ฐ”๋กœ ์ง€๊ธˆ ์ด๊ฒƒ์ด ์šฐ๋ฆฌ๊ฐ€ ์ƒˆ๋กœ์šด ํ”„๋กœ์ ํŠธ์—์„œ Ionic 2๋ฅผ ์ฑ„ํƒํ•˜์ง€ ์•Š๋Š” ๊ฐ€์žฅ ํฐ ์ด์œ ์ž…๋‹ˆ๋‹ค.
์ง„ํ–‰ ์ค‘์ธ ์ž‘์—…์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๊ณต์œ ํ•ด ์ฃผ์‹ค ์ˆ˜ ์žˆ๋Š”์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.
๊ฐ์‚ฌ ํ•ด์š”!

๊ธ€์Ž„ ์ด๊ฒƒ์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์ž๋ฐ” ์Šคํฌ๋ฆฝํŠธ์˜ ๋ฌธ์ œ์ด๋ฉฐ ionic์—๋งŒ ๊ตญํ•œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ ์ด์— ๋Œ€ํ•ด ๋ฌด์—‡์„ ํ•˜๊ณ  ์žˆ๋Š”์ง€ ๋ณด๋Š” ๊ฒƒ์€ ํฅ๋ฏธ๋กญ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์‹œ์ž‘ ์„ฑ๋Šฅ์„ ํฌ๊ฒŒ ํ–ฅ์ƒ์‹œํ‚ค๊ธฐ ์œ„ํ•ด v8 ์—”์ง„์—์„œ "์ฝ”๋“œ ์บ์‹ฑ" ์ด๋ผ๊ณ  ๋ถˆ๋ฆฌ๋Š” ๊ฒƒ์„ ์‚ฌ์šฉํ•˜๋Š” "๊ฒฝ์Ÿ์ ์ธ" ํ”„๋ ˆ์ž„์›Œํฌ ์›น์‚ฌ์ดํŠธ์—์„œ ๊ด€๋ จ ๊ธฐ์‚ฌ๋ฅผ ์šฐ์—ฐํžˆ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.

AoT๋กœ ์ธํ•ด Angular 2๊ฐ€ ๋ชจ๋“ˆ๋กœ ์ „ํ™˜๋œ ํ›„ ์‹œ์ž‘ ์‹œ๊ฐ„์ด ํ›จ์”ฌ ๋” ๋‚˜๋น ์กŒ์Šต๋‹ˆ๋‹ค. ์‹œ์ž‘ ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋Š” ๋ฌธ์ œ๋„ ์žˆ๋Š” NativeScript์—์„œ๋Š” Angular 2๊ฐ€ ์—†์–ด๋„ ๊ดœ์ฐฎ์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค(https://github.com/NativeScript/nativescript-cli/issues/371). 6์›”์— ๋‚ด ์•ฑ์€ ๋น„๊ต์  ๋น ๋ฅด๊ฒŒ ์‹œ์ž‘๋˜์—ˆ์ง€๋งŒ Ionic 2๊ฐ€ Angular 2์˜ ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ์ „ํ™˜๋œ ํ›„ ์ด์ œ๋Š” 5์ดˆ ์ด์ƒ ๊ฑธ๋ฆฌ๋ฉฐ ํ”„๋กœ๋•์…˜์— ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ์ง„ํ–‰ ์ค‘์ธ Angular 2 ๊ฐœ์„  ์‚ฌํ•ญ์ด ์žˆ๊ฑฐ๋‚˜ ํŠธ๋ฆฌ์‰์ดํ‚น๊ณผ ์ง€์—ฐ ๋กœ๋”ฉ์ด ์œ ์ผํ•œ ๋ฐฉ๋ฒ•์ด๋ผ๋Š” ์‚ฌ์‹ค์„ ์•Œ๊ณ  ๊ณ„์‹ญ๋‹ˆ๊นŒ?

@Kobzol ,

์ด์ƒํ•˜๊ฒŒ๋„ AoT๋Š” ํ™•์‹คํžˆ ํ›จ์”ฌ ๋” ๋น ๋ฅธ ์‹œ์ž‘ ์‹œ๊ฐ„์„ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค(์ผ๋ฐ˜์ ์œผ๋กœ ์–ด์จŒ๋“  ๊ทน๋‹จ์ ์ธ ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค).

@์‹œ๋„ˆ์ง€ ,

์‹œ์ž‘ ์‹œ๊ฐ„์€ AoT๋กœ ๊ฝค ๋น ๋ฆ…๋‹ˆ๋‹ค. AoT๋กœ ํ…Œ์ŠคํŠธํ•œ ๊ฒƒ์ด ํ™•์‹คํ•ฉ๋‹ˆ๊นŒ? ๋ฒˆ๋“ค ํฌ๊ธฐ๋Š” ์—ฌ์ „ํžˆ ์ƒ๋Œ€์ ์œผ๋กœ ํฌ๋ฉฐ ์ด๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋งŽ์€ ํฐ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ฐ€์ ธ์˜ค์ง€ ์•Š๋Š” ํ•œ ์™„์ „ํžˆ ํฌ์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. ์ข…์ข… ์ค‘์ฒฉ๋œ ์ข…์†์„ฑ์œผ๋กœ ์ธํ•ด ์ž‘์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ๊ฑฐ๋Œ€ํ•ด์ง‘๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

๋‚ด๊ฐ€ ์ž˜๋ชปํ•˜๊ณ  ์žˆ๋Š”์ง€ ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ ์›นํŒฉ๊ณผ ๋กค์—…์„ ๋ชจ๋‘ ์‚ฌ์šฉํ•˜์—ฌ Ionic 2 ํŠœํ† ๋ฆฌ์–ผ ์Šคํƒ€ํ„ฐ ํ…œํ”Œ๋ฆฟ์˜ AOT prod ๋นŒ๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ ค๊ณ  ํ–ˆ์œผ๋ฉฐ ๋‚ด ์žฅ์น˜์—์„œ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ > 5์ดˆ๊ฐ€ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค(Android์˜ Sony Z3 Compact 6.0.1) ๋ฐ˜๋ฉด ์ด์ „ Ionic 1 ์•ฑ์€ 3์ดˆ ๋งŒ์— ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.
Angular 2๊ฐ€ ๋ชจ๋“ˆ ์‹œ์Šคํ…œ์œผ๋กœ ์ „ํ™˜๋œ ์ง€๋‚œ ๋ช‡ ๋‹ฌ ๋™์•ˆ ์‹œ์ž‘์ด ๋” ๋‚˜๋น ์กŒ์Šต๋‹ˆ๋‹ค(Angular ์ „ํ™˜ ํ›„ ์†๋„๊ฐ€ ๋Š๋ ค์ง„ ๋‚ด nativescript ์•ฑ์—์„œ๋„ ๋™์ผํ•œ ์ผ์ด ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค). ์•„๋งˆ๋„ ์ง€์—ฐ ๋กœ๋”ฉ์ด ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋น„๊ต์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฒค์น˜๋งˆํฌ ์ˆซ์ž๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

5์ดˆ๋Š” ๋‚ด๊ฐ€ ๋ณธ ๊ฒƒ์— ๋น„ํ•ด ๊ทธ๋ ‡๊ฒŒ ๋‚˜์˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‹œ๊ฐ„ ์ดˆ๊ณผ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š๋„๋ก config.xml์—์„œ ์‹œ๊ฐ„ ์ดˆ๊ณผ ์ œํ•œ์„ ๋†’์—ฌ์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค(๊ธฐ๋ณธ๊ฐ’์€ 20์ดˆ์ž…๋‹ˆ๋‹ค!).

๊ทธ๊ฒƒ์€ ๋Š๋ฆฐ 4.4 ์žฅ์น˜์— ๋Œ€ํ•œ ๊ฒƒ์ด์ง€๋งŒ. Sony Xperia E5 6.0์—์„œ๋Š” ์—ฌ์ „ํžˆ 10-15์ดˆ์ž…๋‹ˆ๋‹ค.

iPhone 7 plus๋Š” 2์ดˆ ๋ฏธ๋งŒ์ž…๋‹ˆ๋‹ค.

๋‹น์‹ ์˜ ๋ฌถ์Œ์€ ์–ผ๋งˆ๋‚˜ ํฝ๋‹ˆ๊นŒ? ํƒ€์‚ฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

์•ˆ๋…• ๋Œ„!

๋‚ด๊ฐ€ ์ƒ๊ฐํ•˜๊ธฐ์— ๋„ˆ๋ฌด ๋ฏธ์นœ ๊ฒƒ์€ ์—†์Šต๋‹ˆ๋‹ค.

webpack๊ณผ AoT๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋‚ด ๋ฒˆ๋“ค ํฌ๊ธฐ๋Š” 1.9MB์ž…๋‹ˆ๋‹ค.

package.json์˜ Deps

...
  "dependencies": {
    "@angular/common": "2.2.1",
    "@angular/compiler": "2.2.1",
    "@angular/compiler-cli": "2.2.1",
    "@angular/core": "2.2.1",
    "@angular/forms": "2.2.1",
    "@angular/http": "2.2.1",
    "@angular/platform-browser": "2.2.1",
    "@angular/platform-browser-dynamic": "2.2.1",
    "@angular/platform-server": "2.2.1",
    "@biesbjerg/ng2-translate-po-loader": "^0.1.3",
    "@ionic/app-scripts": "0.0.46",
    "@ionic/storage": "1.1.6",
    "@ngrx/core": "1.2.0",
    "@ngrx/effects": "2.0.0",
    "@ngrx/store": "2.2.1",
    "angular2-uuid": "1.1.0",
    "ionic-angular": "nightly",
    "ionic-native": "2.2.7",
    "ionicons": "3.0.0",
    "ng2-translate": "^4.1.0",
    "ngrx-store-freeze": "0.1.4",
    "ngrx-store-logger": "0.1.7",
    "pofile": "^1.0.2",
    "rxjs": "5.0.0-beta.12",
    "zone.js": "0.6.26"
  },
  "devDependencies": {
    "@biesbjerg/ng2-translate-extract": "^0.1.1",
    "@ionic/app-scripts": "0.0.46",
    "@types/cordova-plugin-media": "0.0.3",
    "del": "^2.2.2",
    "fs": "0.0.1-security",
    "path": "^0.12.7",
    "typescript": "2.0.10"
  },
  "cordovaPlugins": [
    "cordova-plugin-device",
    "cordova-plugin-console",
    "cordova-plugin-whitelist",
    "cordova-plugin-splashscreen",
    "cordova-plugin-statusbar",
    "ionic-plugin-keyboard",
    "cordova-plugin-globalization",
    "cordova-plugin-media",
    "cordova-plugin-file",
    "cordova-plugin-compat",
    {
      "locator": "https://github.com/EddyVerbruggen/cordova-plugin-backgroundaudio",
      "id": "nl.x-services.plugins.backgroundaudio"
    },
    "cordova-plugin-app-version",
    "cordova-plugin-x-socialsharing",
    {
      "locator": "https://github.com/biesbjerg/cordova-plugin-inapppurchase.git",
      "id": "cordova-plugin-inapppurchase"
    },
    {
      "locator": "https://github.com/driftyco/cordova-plugin-wkwebview-engine.git",
      "id": "cordova-plugin-wkwebview-engine"
    },
    "cordova-plugin-google-analytics",
    "cordova-sqlite-storage"
  ],
...

์•ˆ๋…•ํ•˜์‹ญ๋‹ˆ๊นŒ,
์‹œ์ž‘ ์‹œ๊ฐ„๊ณผ ํ•จ๊ป˜ ๋‚ด ์ •๋ณด๋ฅผ ๊ณต์œ ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.
์‚ฌ์‹ค ์ €๋Š” ์˜ค๋ž˜๋œ Ionic V1์„ V2๋กœ ์˜ฎ๊ธฐ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค(์ฒ˜์Œ๋ถ€ํ„ฐ ๋ชจ๋“  ๊ฒƒ์„ ๋‹ค์‹œ ์ž‘์„ฑ).

ํšก๋‹จ ๋ณด๋„๊ฐ€ ์žˆ๋Š” ๋‚ด ์ด์ „ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์€ 3-4์ดˆ์— ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค(์žฅ์น˜์— ๋”ฐ๋ผ ๋‹ค๋ฆ„).
์ƒˆ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์—๋Š” 6~7์ดˆ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค(7์ดˆ๊ฐ€ ๋” ๋†’์Œ).

์•ผ๊ฐ„ ๋นŒ๋“œ(Ionic Framework ๋ฒ„์ „: 2.0.0-rc.3-201612021933)๋ฟ๋งŒ ์•„๋‹ˆ๋ผ RC3๋„ ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค.

Package.json:
{
  "name": "ionic-hello-world",
  "author": "Ionic Framework",
  "homepage": "http://ionicframework.com/",
  "private": true,
  "scripts": {
    "ionic:build": "ionic-app-scripts build",
    "ionic:serve": "ionic-app-scripts serve"
  },
  "dependencies": {
    "@angular/common": "2.2.1",
    "@angular/compiler": "2.2.1",
    "@angular/compiler-cli": "2.2.1",
    "@angular/core": "2.2.1",
    "@angular/forms": "2.2.1",
    "@angular/http": "2.2.1",
    "@angular/platform-browser": "2.2.1",
    "@angular/platform-browser-dynamic": "2.2.1",
    "@angular/platform-server": "2.2.1",
    "@ionic/storage": "1.1.6",
    "ionic-angular": "^2.0.0-rc.3-201612021933",
    "ionic-native": "2.2.3",
    "ionicons": "3.0.0",
    "moment": "2.15.1",
    "rxjs": "5.0.0-beta.12",
    "zone.js": "0.6.26"
  },
  "devDependencies": {
    "@ionic/app-scripts": "0.0.44",
    "typescript": "2.0.9",
    "webpack-bundle-analyzer": "^1.5.3"
  },
  "cordovaPlugins": [
    "cordova-plugin-whitelist",
    "cordova-plugin-statusbar",
    "cordova-plugin-console",
    "cordova-plugin-device",
    "cordova-plugin-splashscreen",
    "ionic-plugin-keyboard"
  ],
  "cordovaPlatforms": [],
  "description": "o2: An Ionic project"
}

๋‚ด ์ž์‚ฐ ํด๋”(ํƒ€์‚ฌ ํ”Œ๋Ÿฌ๊ทธ์ธ/์ด๋ฏธ์ง€)๋Š” ์•ฝ 2.14MB์ž…๋‹ˆ๋‹ค.
6๊ฐœ์˜ ๋‹ค๋ฅธ ํƒ€์‚ฌ ํ”Œ๋Ÿฌ๊ทธ์ธ(jQuery, moment, hammer, jquery 3.1, fullcalendar, svg-panzoom, fontawesome)์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

APK ํฌ๊ธฐ: 6.58MB
์••์ถ•์„ ํ‘ผ ์ด ํŒจํ‚ค์ง€๋Š” 15MB์ž…๋‹ˆ๋‹ค.

์ ‘๋Š”:

  • ์ž์‚ฐ : 10.1MB
    -> www/assets : 2.93MB
    -> www/build: 7.07MB
    -> www/build/main.js: 3.003MB
    -> www/build/main.js.map: 3.790MB(ํ”„๋กœ๋•์…˜์— ํ•„์š”ํ•œ๊ฐ€์š”?)
  • ํ•ด์ƒ๋„: 1.73MB
  • class.dex: 3.07MB
  • ๋ฆฌ์†Œ์Šค.arsx: 0.13MB

Ionic ๋ฒ„์ „ ์ •๋ณด:

Your system information:
Cordova CLI: 6.4.0
Ionic Framework Version: 2.0.0-rc.3-201612021933
Ionic CLI Version: 2.1.13
Ionic App Lib Version: 2.1.7
Ionic App Scripts Version: 0.0.44
ios-deploy version: Not installed
ios-sim version: Not installed
OS: Windows 8.1
Node Version: v6.9.1
Xcode version: Not installed

์•„๋งˆ๋„ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. @danbucholtz / @jgw96 ์ด ์‹ค์ œ ํ”„๋กœ์ ํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด ๋ฌธ์ œ๋ฅผ ๋””๋ฒ„๊น…ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ๊ธฐ๊บผ์ด ๊ณต์œ ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค(๋น„๊ณต๊ฐœ).

์ธ์‚ฌ๋ง
์ž๋ชฝ

ํ”„๋กœ๋•์…˜ ๋นŒ๋“œ์—์„œ๋Š” ์†Œ์Šค๋งต์„ ๋น„ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. Angular CLI๋Š” ์ตœ๊ทผ์— ๋น„ํ™œ์„ฑํ™”ํ•˜๋Š” ์˜ต์…˜์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. https://github.com/angular/angular-cli/pull/3262

Graphefruit ์•ฑ์˜ ๊ตฌ์„ฑ ์š”์†Œ ์ˆ˜์™€ ์ง€์‹œ๋ฌธ๋„ ๊ณต์œ ํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

์•ˆ๋…•ํ•˜์„ธ์š” @naveedahmed1 ,
์—ฌ๊ธฐ ์šฐ๋ฆฌ๊ฐ€ ๊ฐ„๋‹ค:

  • ์„œ๋น„์Šค: 10
  • ํŒŒ์ดํ”„: 3
  • ํŽ˜์ด์ง€: ~49
  • ๋งž์ถค ๊ตฌ์„ฑ: 1
  • ์ง€์‹œ๋ฌธ: 0 ( ;) )

์ธ์‚ฌ๋ง
์ž๋ชฝ

@naveedahmed1 ๊ทธ ๋ฌธ์ œ๋Š” ์†Œ์Šค ๋งต์„ ์ธ๋ผ์ธํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์— ๊ด€ํ•œ ๊ฒƒ์ธ๋ฐ, ์•„๋งˆ๋„ ํ”„๋กœ๋•์…˜์—์„œ ๊ฐ€์žฅ ์ข‹์€ ์•„์ด๋””์–ด๊ฐ€ ์•„๋‹ ๊ฒƒ์ด๋ผ๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํ”„๋กœ๋•์…˜ ์ž์‚ฐ์— ๋Œ€ํ•œ ์™ธ๋ถ€ ๋งต ํŒŒ์ผ์€ ์œ ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋ฐฐํฌ๋œ ํŒŒ์ผ์— ์ž‘์€ ์„ค๋ช…๋งŒ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœ๋•์…˜ ๋นŒ๋“œ๋ฅผ ์œ„ํ•œ ์™ธ๋ถ€ ์ง€๋„ ํŒŒ์ผ์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

@rob3c ,

๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

@danbucholtz , ๋ถ€ํŒ… ์‹œ๊ฐ„ ๊ฐœ์„ ์ด ์ •๋ง ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋‚ด Samsung Galaxy S4 Android ๋ฒ„์ „ 5.0.1์—์„œ๋Š” ํ”Œ๋ ˆ์ด ์Šคํ† ์–ด์—์„œ ๋‹ค์šด๋กœ๋“œํ•œ ionic-conference-app์กฐ์ฐจ๋„ 9-10์ดˆ๊ฐ€ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค.
์ด๊ฒƒ์€ ๋‚ด๊ฐ€ ๋‹ค์šด๋กœ๋“œํ•œ ์•ฑ์ž…๋‹ˆ๋‹ค --- https://play.google.com/store/apps/details?id=io.ionic.conferenceapp

ํŽ˜์ด์ง€ ์ˆ˜๊ฐ€ ์ ์€ ๋‚ด ์•ฑ์˜ ๋ถ€ํŒ… ์‹œ๊ฐ„์€ ๋™์ผํ•œ ์ „ํ™”์—์„œ ์•ฝ 7-8์ดˆ์ž…๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์ €๋Š” ๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋ฅผ ํ†ตํ•ด ์ €๋ฅผ ์ฒจ๋ถ€ํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ๊ณ  ๊ฝค ์ข‹์€ ํƒ€์ž„๋ผ์ธ ๊ฒฐ๊ณผ๋ฅผ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค.
์ฒจ๋ถ€ ๋•Œ๋ฌธ์— ์ฒ˜์Œ๋ถ€ํ„ฐ ์ถ”์ ํ•  ์ˆ˜ ์—†์—ˆ์ง€๋งŒ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ƒํ™ฉ์ด ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.
image

์ปดํŒŒ์ผ ์Šคํฌ๋ฆฝํŠธ๋Š” ์•ฝ 500ms๊ฐ€ ์†Œ์š”๋˜๋ฉฐ ํ‰๊ฐ€ ์Šคํฌ๋ฆฝํŠธ๋Š” 0ms์—์„œ 5000ms ์‚ฌ์ด์ž…๋‹ˆ๋‹ค.

ํ•„์š”ํ•œ ๊ฒฝ์šฐ @danbucholtz @jgw96 ์ด์— ๋Œ€ํ•ด ์ €์žฅ๋œ ํƒ€์ž„๋ผ์ธ์„ ๋ณด๋‚ด๋“œ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์–ด๋–ป๊ฒŒ ์ด๊ฒƒ์„ ํ”„๋กœํŒŒ์ผ๋งํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๊นŒ? ์•ฑ์ด ์™„์ „ํžˆ ์‹œ์ž‘๋  ๋•Œ๊นŒ์ง€ ์•ฑ์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

BTW ๊ทธ๊ฒƒ์ด ๋‹น์‹ ์—๊ฒŒ ์ข‹์€ ๊ฒฐ๊ณผ์ธ์ง€๋Š” ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ ์Šฌํ”„๊ฒŒ๋„ ๋‚ด ํด๋ผ์ด์–ธํŠธ์˜ ๊ฒฝ์šฐ > 5/6์ดˆ ์‹œ์ž‘ ์‹œ๊ฐ„์€ ์šฉ๋‚ฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

@Kobzol ์ข‹์€ ๊ฒฐ๊ณผ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ํŽ˜์ด์ง€์—๋„ 7์ดˆ ~๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
๋‚ด๊ฐ€ ํ•œ ์ผ: ํŽ˜์ด์ง€๋ฅผ ์—ด๊ณ  ์—ฐ๊ฒฐ๋œ ์žฅ์น˜ ๋ชฉ๋ก์„ ํ™•์ธํ•˜๊ณ  ์•ฑ์„ ์ฒ˜์Œ์œผ๋กœ ์ •์ƒ์ ์œผ๋กœ ์‹œ์ž‘ํ•˜๊ณ  "๊ฒ€์‚ฌ๊ธฐ"๋ฅผ ์—ด์–ด ํƒ€์ž„๋ผ์ธ ํƒญ์œผ๋กœ ์ „ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
์ง€๊ธˆ ์•ฑ์„ ๋‹ซ๊ณ  ๊ฒ€์‚ฌ๊ธฐ, ์ด์ œ ์•ฑ์„ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๊ณ  ๊ฒ€์‚ฌ๋ฅผ ๋ˆ„๋ฅด๊ณ  ํƒ€์ž„ ๋ผ์ธ ํƒญ์—์„œ ์ดˆ๊ณ ์† ๋…นํ™” ๋ฒ„ํŠผ์„ ๋ˆ„๋ฆ…๋‹ˆ๋‹ค ;)
์•ฑ์ด ์‹œ์ž‘๋  ๋•Œ ์ฒ˜์Œ 1-2์ดˆ๋Š” ๋‚˜๋„ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์ง€๋งŒ ๋‚˜๋จธ์ง€๋Š” ์•ฝ๊ฐ„์˜ ๋น ๋ฅธ ์†๊ฐ€๋ฝ์œผ๋กœ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

์—…๋ฐ์ดํŠธ: Ionic1์„ ์‚ฌ์šฉํ•˜๋ฉด ์‹œ์ž‘ ์‹œ๊ฐ„์ด 3-4์ดˆ๋กœ ๊ฝค ๊ดœ์ฐฎ์•˜์Šต๋‹ˆ๋‹ค.

AoT ๊ฑด๋ฌผ์„ ์ง“๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ? ๊ทธ ์‹œ๊ฐ„๋“ค์ด ๋”๋””๊ฒŒ ๋Š๊ปด์ง„๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

@danbucholtz , ์ œ ๊ฒฝ์šฐ์—๋Š” ํ”Œ๋ ˆ์ด ์Šคํ† ์–ด์—์„œ ionic-conference-app์„ ๋‹ค์šด๋กœ๋“œ ์—ฌ๊ธฐ์—์„œ ์ œ ์˜๊ฒฌ์„ ์ฐธ์กฐ

@savanvadalia ,

์‹ค์ œ๋กœ AoT ๋ฒˆ๋“ค๋กœ ์ œ๊ณต๋˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ํ”Œ๋ ˆ์ด ์Šคํ† ์–ด์—์„œ ๊บผ๋ƒˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๊ฐ€ ๊ฒŒ์‹œํ•˜๊ธฐ ์ „์— ์‹ค์ˆ˜๋ฅผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ณง ์ƒˆ ๋ฒ„์ „์„ ๋‹ค์‹œ ๊ฒŒ์‹œํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์ตœ์‹  ๋ฒ„์ „์˜ ionic CLI ๋ฐ ์•ฑ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

npm install -g ionic<strong i="9">@latest</strong>
npm install @ionic/app-scripts<strong i="10">@latest</strong>

๊ทธ๋ฆฌ๊ณ  ionic build android --prod --release ? ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์ตœ์ ํ™”๋œ APK๊ฐ€ ํฌํ•จ๋œ AoT ๋นŒ๋“œ๊ฐ€ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ๋Š๋ฆฐ ์žฅ์น˜์—์„œ๋„ 9์ดˆ๋ณด๋‹ค ํ›จ์”ฌ ๋น ๋ฅด๊ฒŒ ์‹œ์ž‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

@Dan ์–ด๋–ค ์žฅ์น˜์—์„œ ์ด๊ฒƒ์„ ํ…Œ์ŠคํŠธํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ? ๋ชจ๋“  ํŒจํ‚ค์ง€๊ฐ€ ์—…๋ฐ์ดํŠธ๋˜์–ด๋„ 6์ดˆ ๋ฏธ๋งŒ์ด ๊ฑธ๋ฆฌ์ง€ ์•Š์œผ๋ฉฐ ์—ฌ๊ธฐ์—์„œ ๋ณธ ๊ฒƒ์œผ๋กœ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค๋„ ๋น„์Šทํ•œ ๊ฒฝํ—˜์„ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ตœ์‹  ์•ฑ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์„ค์น˜ํ•œ ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

์—…๋ฐ์ดํŠธ ๋ฌธ์ œ:

์ตœ์‹  ์•ฑ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•˜๋ฉด ๋‹ค์Œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. (์ด์ „์— ionic @latest ๋ฅผ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค)

C:\Users\graphefruit\Documents\o3>npm install @ionic/app-scripts<strong i="9">@latest</strong>
ionic-hello-world@ C:\Users\graphefruit\Documents\o3
`-- @ionic/[email protected]  invalid
  +-- [email protected]
  +-- [email protected]
  `-- [email protected]
    +-- [email protected]
    `-- [email protected]

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules\ch
okidar\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@
1.0.15: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"
})

์ด ํ›„ ๋™์ผํ•œ ์˜ค๋ฅ˜๋กœ ionic start o4 --v2 ์™„์ „ํ•œ ์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

์—…๋ฐ์ดํŠธ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์ดํ•ดํ•˜์ง€ ๋ชปํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. package.json node_modules ํด๋”๋ฅผ ์ง์ ‘ ์žก์•„์•ผ ํ•ฉ๋‹ˆ๊นŒ ์•„๋‹ˆ๋ฉด
์ˆ˜๋™์œผ๋กœ ์„ค์ •๋œ ์•ฑ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๊ณ  npm install์„ ์‹คํ–‰ํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์ง€๋งŒ ์ถฉ๋Œํ–ˆ์Šต๋‹ˆ๋‹ค.
package.json๋„ 0.47 ์ž๋™ ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

์ด์ œ 0.0.45 ๋ฐ --prod --release ํ”„๋กœ์ ํŠธ๋ฅผ ๋นŒ๋“œํ•ฉ๋‹ˆ๋‹ค.

_ ๊ทธ๋ฆฌ๊ณ  ์‹œ์ž‘ ์‹œ๊ฐ„๋„ 7-8์ดˆ์˜€์Šต๋‹ˆ๋‹ค. _

@danbucholtz ์–ด๋””์„ ๊ฐ€ ngfactory ํŒŒ์ผ์„ ๋ณธ ๊ธฐ์–ต์ด ๋‚˜์„œ ์ง€๊ธˆ๊นŒ์ง€ ํ•ญ์ƒ AOT๋ฅผ ์‚ฌ์šฉํ•ด ์™”๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ ๋ฒ„์ „ 0.0.46์ด ์ ์ ˆํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํ˜„์žฌ ์ตœ์‹  ์•ฑ ์Šคํฌ๋ฆฝํŠธ ๋ฒ„์ „์œผ๋กœ ์ด๋™ํ•˜๋Š” ๋ฐ ์—ฌ์ „ํžˆ ์•ฝ๊ฐ„์˜ ์ €ํ•ญ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์–ด์จŒ๋“  ๋‚˜๋Š” ๋‹น์‹ ์˜ ๋ง์„ ๋ฐ›์•„๋“ค์ด๊ณ  0.0.47๋กœ ์—…๋ฐ์ดํŠธํ•˜๊ณ  ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๋Š”์ง€ ์•Œ๋ ค์ค„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์‚ฌ๋ฐ˜

@danbucholtz ์ตœ์‹  ionic-app-scripts๋กœ ์—…๋ฐ์ดํŠธํ•˜๊ณ  ์ด ์˜ค๋ฅ˜๋ฅผ ๋ฐ›๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค(์•„๋ž˜ ์Šคํฌ๋ฆฐ์ƒท ์ฐธ์กฐ).
๋˜ํ•œ ๋ฆด๋ฆฌ์Šค ๋…ธํŠธ์— ์–ธ๊ธ‰๋œ ์—…๊ทธ๋ ˆ์ด๋“œ ์ ˆ์ฐจ๋ฅผ ์—„๊ฒฉํ•˜๊ฒŒ ๋”ฐ๋ž์Šต๋‹ˆ๋‹ค.

๋„์™€์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

image

๊ฐ์‚ฌ ํ•ด์š”
์‚ฌ๋ฐ˜

@graphefruit ์ตœ์‹  ionic-cli๋ฅผ ์„ค์น˜ํ•˜๊ณ  ํ”„๋กœ์ ํŠธ ์ˆ˜์ค€์—์„œ npm ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•˜๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ ์—์„œ ๋ฆด๋ฆฌ์Šค ์ ˆ์ฐจ๋ฅผ ๋”ฐ๋ฅด์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์œ„์—์„œ ์–ธ๊ธ‰ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ๋‹ค๋ฅธ ๋Ÿฐํƒ€์ž„ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. "์˜ˆ๊ธฐ์น˜ ์•Š์€ ๊ฐ’ 'undefined'๊ฐ€ 'AppModule' ๋ชจ๋“ˆ์— ์˜ํ•ด ์„ ์–ธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค."

๋˜ํ•œ ์‹คํ–‰ 0.0.45 ๊ฐ€์ง„ --prod --release ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค ๋„์›€์ด๋ฉ๋‹ˆ๋‹ค. Dan์€ 0.0.47 ์—์„œ 0.0.47 ๋ฒ„์ „์œผ๋กœ ์‹คํ–‰ํ•ด ๋‹ฌ๋ผ๊ณ  ์š”์ฒญํ–ˆ์œผ๋ฉฐ ์•ž์œผ๋กœ ์ด๊ฒƒ์ด ํ”„๋กœ๋•์…˜ ๋นŒ๋“œ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด์ „ ionic-app-script ๋ฒ„์ „์—์„œ๋Š” ionic run android ๊ฐ€ ๊ธฐ๋ณธ์ ์œผ๋กœ ํ”„๋กœ๋•์…˜ ๋นŒ๋“œ๋ฅผ ์ƒ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

@savanvadalia ๊ท€ํ•˜์˜ ํ”ผ๋“œ๋ฐฑ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์ ˆ์ฐจ์— ๋งŽ์ด ์ž‘์„ฑ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
์ €๋„ ์ƒˆ๋กœ์šด ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ–ˆ๊ณ  ์ด์ „์— npm install -g ionic@latest ๋ฅผ ํ–ˆ์Šต๋‹ˆ๋‹ค.
๋ฐฉ๊ธˆ ํ”„๋กœ์ ํŠธ ํด๋”์—์„œ ๋‘ ๋ช…๋ น์„ ๋ชจ๋‘ ์‹คํ–‰ํ–ˆ์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด ๊ตฌ์ฒด์ ์œผ๋กœ ํ•˜์…จ๋‚˜์š”?
๋‚ด๊ฐ€ ๋งํ–ˆ๋“ฏ์ด ์ด๋ฏธ node_modules ํด๋”๋ฅผ ์ œ๊ฑฐํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ๊ณ  ๋‚˜์ค‘์— npm-install ํ–ˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ์ œ ์ƒ๊ฐ์—๋Š” package.json ๊ฐ€ ์ตœ์‹  ์•ฑ ์Šคํฌ๋ฆฝํŠธ ๋ฒ„์ „์œผ๋กœ ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š์œผ๋ฉด ๋„์›€์ด ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. 0.47 ํ•˜์ง€๋งŒ ์ˆ˜๋™์œผ๋กœ ํ•˜๋ฉด ๋” ๋งŽ์ด ์ถฉ๋Œํ•ฉ๋‹ˆ๋‹ค...

์ผ๋ฐ˜์ ์œผ๋กœ ๋ณ€๊ฒฝ ๋กœ๊ทธ์— ์ตœ์‹  package.json๊ณผ ์—…๋ฐ์ดํŠธํ•  ๋‚ด์šฉ์„ ๊ฒŒ์‹œํ•ฉ๋‹ˆ๋‹ค.

์—…๋ฐ์ดํŠธ, ๋งˆ์ง€๋ง‰์œผ๋กœ ๋‹ค์Œ ๋ช…๋ น์œผ๋กœ ํ•ด๊ฒฐํ•˜๋„๋ก ๊ด€๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค.

npm install ionic-angular<strong i="18">@nightly</strong> --save
npm install @ionic/app-scripts<strong i="19">@latest</strong> --save-dev

๋นŒ๋“œ๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

๋นŒ๋“œ ํ…Œ์ŠคํŠธ

๊ทธ๋ž˜์„œ ๋นŒ๋“œ๊ฐ€ ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์žฌ๋ฏธ์žˆ๋Š” ์‚ฌ์‹ค์ž…๋‹ˆ๋‹ค. ngc-started๊ฐ€ 10๋ถ„ ์ด์ƒ ํ‘œ์‹œ๋˜๊ธฐ ๋•Œ๋ฌธ์— "strg +c"๊ฐ€ ํ•„์š”ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ํ›„ ๋นŒ๋“œ๊ฐ€ ๊ณ„์†๋˜์—ˆ๊ณ  ๋‘ ๋ฒˆ์งธ๋กœ ๋ฌธ์ œ ์—†์ด ์‹คํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

ํฌ๊ธฐ: 9.2MB
main.js.map ๋Š” ํ”„๋กœ๋•์…˜์šฉ์œผ๋กœ ๋นŒ๋“œํ•  ๋•Œ ์—ฌ์ „ํžˆ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

์•ฑ์„ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ 7~10์ดˆ(๊ธฐ๊ธฐ์— ๋”ฐ๋ผ ๋‹ค๋ฆ„)๊ฐ€ ํ•„์š”ํ•˜๋ฏ€๋กœ ์ด์ „๋ณด๋‹ค ๋” ๋‚˜๋น ์ง„ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค.
(์ฃผ1, ์ฃผ2)

Google Pixel XL์—์„œ ์‹œ์ž‘ ์‹œ๊ฐ„์€ ์•ฝ 4.5~5์ดˆ์˜€์Šต๋‹ˆ๋‹ค.
๋‚ด ์ด์ „ ์•ฑ ๋ฒ„์ „๊ณผ ๋น„๊ตํ•˜๋ฉด ์—ฌ์ „ํžˆ 1-2์ดˆ ๋Š๋ฆฝ๋‹ˆ๋‹ค(์‹œ์ž‘ ์‹œ๊ฐ„ 3.5์ดˆ).

Your system information:

Cordova CLI: 6.4.0
Ionic Framework Version: 2.0.0-rc.3-201612142137
Ionic CLI Version: 2.1.17
Ionic App Lib Version: 2.1.7
Ionic App Scripts Version: 0.0.47
ios-deploy version: Not installed
ios-sim version: Not installed
OS: Windows 8.1
Node Version: v6.9.1
Xcode version: Not installed

์—…๋ฐ์ดํŠธ 2:

๋ฐฉ๊ธˆ ์ด์ „ ๋นŒ๋“œ์˜ ํฌ๊ธฐ๋ฅผ 0.45 ๋ฐ 0.47๊ณผ ๋น„๊ตํ–ˆ์Šต๋‹ˆ๋‹ค. main.js์˜ ํฌ๊ธฐ๋Š” (๊ฑฐ์˜ ~10kb) 3MB์ž…๋‹ˆ๋‹ค. - ์ด๊ฒƒ๋„ ์˜ํ–ฅ์„ ๋ฐ›์•„์•ผ ํ•˜๋Š”์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

์—…๋ฐ์ดํŠธ3:

15๋ถ„ ๋™์•ˆ ๋กœ๋”ฉ์„ ์‹œ๋„ํ•œ ํ›„ ๊ฐ€์žฅ ์ข‹์€ ์Šค๋ƒ…์ƒท์ž…๋‹ˆ๋‹ค.
image

@danbucholtz ๋Ÿฐํƒ€์ž„ ์˜ค๋ฅ˜๋ฅผ ์ง์ ‘ ํ•ด๊ฒฐ

๊ทธ๋Ÿฌ๋‚˜ ๋‚ด Samsung Galaxy S4 Android ๋ฒ„์ „ 5.0.1์—์„œ ์˜ค๋ฅ˜๋ฅผ ์ˆ˜์ •ํ•˜๊ณ  ionic run android --prod --release ๋ฅผ ์‹คํ–‰ํ•œ ํ›„ ์ดˆ๊ธฐ ๋กœ๋“œ๋Š” ์—ฌ์ „ํžˆ 7-8์ดˆ์ž…๋‹ˆ๋‹ค. ์ตœ์‹  ionic-app-scripts ๋ฒ„์ „์œผ๋กœ ์—…๋ฐ์ดํŠธ ํ•œ ํ›„ ์ดˆ๊ธฐ์— ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์ „ํ˜€ ์—†์Šต๋‹ˆ๋‹ค.

์ดˆ๊ธฐ ๋กœ๋“œ ์‹œ๊ฐ„์„ ๊ฐœ์„ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ €๋Š” ๊ฐœ์ธ์ ์œผ๋กœ ์ œ๊ฐ€ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ํœด๋Œ€ํฐ๊ณผ ์•ˆ๋“œ๋กœ์ด๋“œ ๋ฒ„์ „์ด ๋ถ€ํŒ… ์‹œ๊ฐ„์ด ๊ทธ๋ ‡๊ฒŒ ๋Š๋ฆฌ๊ธฐ์—๋Š” ์ƒ๋Œ€์ ์œผ๋กœ ์˜ค๋ž˜๋˜์—ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ตฌํ˜• ์ค‘๊ธ‰ ์ „ํ™”๊ธฐ์—์„œ ๋ถ€ํŒ… ์‹œ๊ฐ„์ด 3-4์ดˆ ์‚ฌ์ด์— ์žˆ์œผ๋ฉด ํ–‰๋ณตํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.


@graphefruit , ๋ฆด๋ฆฌ์Šค ์ ˆ์ฐจ์— ์–ธ๊ธ‰๋˜์ง€ ์•Š์€ 2๋‹จ๊ณ„๋ฅผ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.
1) package.json ํŒŒ์ผ์„ ์ˆ˜๋™์œผ๋กœ ์ˆ˜์ •ํ•˜์—ฌ ์Šคํฌ๋ฆฝํŠธ ๋ฒ„์ „์„ 0.0.47 ๋กœ ๋ณ€๊ฒฝํ•œ ํ›„ npm install์„ ์‹คํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.
2) ๋ฆด๋ฆฌ์Šค ๋…ธํŠธ์— ๋”ฐ๋ผ ์ƒˆ ๋นŒ๋“œ ํ”„๋กœ์„ธ์Šค์— ์œ ํšจํ•˜์ง€ ์•Š์€ .tmp ๋””๋ ‰ํ† ๋ฆฌ๋„ ์ œ๊ฑฐํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด ์™ธ์—๋Š” ๋ฆด๋ฆฌ์Šค ์ ˆ์ฐจ๋ฅผ ๋”ฐ๋ž์Šต๋‹ˆ๋‹ค.

์ตœ์‹  ionic cli๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ? ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? npm install -g ionic@latest .

npm run ionic:build --aot ngc ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ํ„ฐ๋ฏธ๋„์—์„œ ionic run android --prod --release ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ํ„ฐ๋ฏธ๋„์— ngc ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๊นŒ?

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

์•ˆ๋…•ํ•˜์„ธ์š” @danbucholtz ์ž…๋‹ˆ๋‹ค .

์˜ˆ --prod --release๋ฅผ ์‹คํ–‰ํ•  ๋•Œ ngc๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
๋˜ํ•œ ์˜ค๋ฅ˜ ์—†์ด cmd๋ฅผ ํ†ตํ•ด ionic @latest ๋ฅผ 4๋ฒˆ ์ด์ƒ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ์•„๋งˆ๋„ package.json์˜ ์ผ๋ถ€ ์„ค์ •์„ ๋ณ€๊ฒฝํ•ด์•ผ ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์ฒด์ ์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
๋˜ํ•œ ๋‚˜๋Š” ์•ฝ๊ฐ„์˜ ์ฐจ์ด๋ฅผ ๋ณด๊ธฐ ์œ„ํ•ด nightly๋ฅผ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‚ด์ผ ์•„์นจ์— ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค๋ฅธ ๋ช…๋ น์ž…๋‹ˆ๋‹ค.

์ธ์‚ฌ๋ง
์ž๋ชฝ

@danbucholtz

์˜ˆ, ์ตœ์‹  ionic-cli๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค(๋งˆ์ง€๋ง‰์— ๋‚ด ์ž‘์—… ๊ณต๊ฐ„ ํ™˜๊ฒฝ ์ •๋ณด ์ฐธ์กฐ).
๋‚˜๋Š” ๋˜ํ•œ ๋‹น์‹ ์ด ์–ธ๊ธ‰ํ•œ ๋‘ ๊ฒฝ์šฐ ๋ชจ๋‘์—์„œ ํ„ฐ๋ฏธ๋„์— ngc ๋ฅผ ๋ด…๋‹ˆ๋‹ค. ๊ฐ๊ฐ์— ๋Œ€ํ•œ ์Šคํฌ๋ฆฐ์ƒท์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.
1) npm run ionic:build --aot
2) ionic run android --prod --release

1) AOT ๋นŒ๋“œ
image

2) ์žฅ์น˜์—์„œ ์‹คํ–‰๋˜๋Š” ๋™์•ˆ ํ”„๋กœ๋•์…˜ ๋นŒ๋“œ

image

7-8์ดˆ์ธ ์ดˆ๊ธฐ ๋กœ๋“œ ์‹œ๊ฐ„์—๋Š” ์—ฌ์ „ํžˆ ์ฐจ์ด๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค ๐Ÿ˜ž ๐Ÿ˜ž

cordova CLI: 6.4.0
Ionic Framework Version: 2.0.0-rc.3
Ionic CLI Version: 2.1.17
Ionic App Lib Version: 2.1.7
Ionic App Scripts Version: 0.0.47
ios-deploy version: Not installed
ios-sim version: Not installed
OS: Windows 10
Node Version: v6.9.1
Xcode version: Not installed

@savanvadalia ๊ธด ๋กœ๋”ฉ ์‹œ๊ฐ„์€ ์•ฑ์— ๋”ฐ๋ผ

๋˜ํ•œ ionic-angular RC4๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

@danbucholtz Care๋‹˜, ์ด ๊ฒŒ์‹œ๋ฌผ์€ ์กฐ๊ธˆ ๋” ๊ธธ์–ด์งˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‚ด/๋งž์ถค ํ”„๋กœ์ ํŠธ

npm run ionic:build --aot
image

ionic run android --prod --release
image

ionic build android --prod --release
image

์•„์ง ๋กœ๋”ฉ ์‹œ๊ฐ„์ด 10์ดˆ.

์Šคํƒ€ํ„ฐ ์•ฑ

@astec ๋ฌธ์˜ ํ›„ ์Šคํƒ€ํ„ฐ ์•ฑ์„ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ์—ฌ๊ธฐ์—์„œ๋„ ๋˜‘๊ฐ™์ด ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.

  1. npm install -g ionic@latest
  2. ionic start o5 --v2
  3. ionic info
Your system information:

Cordova CLI: 6.4.0
Ionic Framework Version: 2.0.0-rc.4
Ionic CLI Version: 2.1.17
Ionic App Lib Version: 2.1.7
Ionic App Scripts Version: 0.0.47
ios-deploy version: Not installed
ios-sim version: Not installed
OS: Windows 8.1
Node Version: v6.9.1
Xcode version: Not installed
  1. ionic platform add android
  2. npm run ionic:build --aot
    image
  3. ionic run android --prod --release
    image

  4. ํƒ€์ž„์Šค:
    7.1 ์ฐธ๊ณ  1 - Android 4.1 - ์Šคํƒ€ํ„ฐ ํ”„๋กœ์ ํŠธ๋Š” 5~5.5์ดˆ ์ •๋„ ์†Œ์š”๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
    7.2. ์ฐธ๊ณ  2 - Android 7.0(CM14) - ์Šคํƒ€ํ„ฐ ํ”„๋กœ์ ํŠธ๋Š” 5.5~6.5์ดˆ ์ •๋„ ์†Œ์š”๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

ํšŒ์˜ - ์•ฑ

๊ทธ๋ž˜์„œ ๋‹ค์Œ ์‹œ๋„๋Š” ์Šคํƒ€ํ„ฐ ์•ฑ์„ ๋‹ค์šด๋กœ๋“œํ–ˆ์Šต๋‹ˆ๋‹ค: https://github.com/driftyco/ionic-conference-app

  1. npm install
  2. ionic info
    image

-> ์ด๊ฒƒ์€ rc.4์— ์—†๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์›์ธ

  1. changelog์—์„œ ์–ธ๊ธ‰ํ•œ ๋Œ€๋กœ package.json์„ ๋ณ€๊ฒฝํ–ˆ์Šต๋‹ˆ๋‹ค.
"dependencies": {
  "@angular/common": "2.2.1",
  "@angular/compiler": "2.2.1",
  "@angular/compiler-cli": "2.2.1",
  "@angular/core": "2.2.1",
  "@angular/forms": "2.2.1",
  "@angular/http": "2.2.1",
  "@angular/platform-browser": "2.2.1",
  "@angular/platform-browser-dynamic": "2.2.1",
  "@angular/platform-server": "2.2.1",
  "@ionic/storage": "1.1.6",
  "ionic-angular": "2.0.0-rc.4",
  "ionic-native": "2.2.11",
  "ionicons": "3.0.0",
  "rxjs": "5.0.0-beta.12",
  "zone.js": "0.6.26"
},
"devDependencies": {
  "@ionic/app-scripts": "0.0.47",
  "typescript": "2.0.9"
}
  1. node_modules ์‚ญ์ œ๋จ
  2. npm install
  3. ionic info
    image
  4. ionic platform add android
  5. npm run ionic:build --aot
    image
  6. ionic run android --prod --release
    image
  7. ionic build android --prod --release
    image
  8. ์‹œ์ž‘ ์‹œ๊ฐ„
    11.1 ์ฐธ๊ณ  1 - Android 4.1 - 7-8s
    11.2 ์ฐธ๊ณ  2 - Android 7(CM 14) - 7 - 8.5์ดˆ

ํ™”๋ฉด์— ์ฝ˜ํ…์ธ ๊ฐ€ ํ‘œ์‹œ๋  ๋•Œ๊นŒ์ง€ "์•ฑ ์•„์ด์ฝ˜ ํด๋ฆญ"์œผ๋กœ ์‹œ๊ฐ„์„ ์ธก์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.
๋”ฐ๋ผ์„œ ์ตœ์‹  ๋ฆด๋ฆฌ์Šค์˜ ํšŒ์˜ ์•ฑ๋„ 7-8์ดˆ๊ฐ€ ํ•„์š”ํ•˜๋ฏ€๋กœ ์‚ฌ์šฉ์ž ์ง€์ • ๋ฆด๋ฆฌ์Šค ํ”„๋กœ์ ํŠธ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.
๊ทธ๋Ÿผ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  Conference-app์€ ํฐ ์ธํ„ฐ๋„ท ํ™œ๋™์ด๋‚˜ html-5 ํŒŒ์ผ ์‹œ์Šคํ…œ ์—†์ด ์—ฌ์ „ํžˆ ๋งค์šฐ ์ž‘์Šต๋‹ˆ๋‹ค.

๋„์›€์ด ๋˜์—ˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.
์ธ์‚ฌ๋ง
์ž๋ชฝ

@jgw96 , ์œ„์˜ ๋‚ด์šฉ์— ๋ฌด๊ฒŒ๋ฅผ

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

FWIW ๋‚˜๋Š” Sony Compact Z3๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ ๊ทธ๋ ‡๊ฒŒ ์˜ค๋ž˜๋˜์ง€ ์•Š์•˜์œผ๋ฉฐ ์‹œ๊ฐ„์€ Android 6.x์—์„œ ๊ฑฐ์˜ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.

@jgw96 @danbucholtz ์ง€๊ธˆ Google Pixel์—๋„ ์„ค์น˜ํ–ˆ๋Š”๋ฐ ํšŒ์˜ ์•ฑ ์‹œ์ž‘ ์‹œ๊ฐ„์ด 3.5~4์ดˆ ๊ฑธ๋ ธ์Šต๋‹ˆ๋‹ค.
์žฌ๋ฏธ์žˆ๋Š” ์‚ฌ์‹ค: ์‹œ์ž‘ ์‹œ๊ฐ„์ด 8-10์ดˆ๋กœ 10๋ฒˆ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ์•ฑ์„ ์ œ๊ฑฐํ–ˆ๋‹ค๊ฐ€ ๋‹ค์‹œ ์„ค์น˜ํ–ˆ๋Š”๋ฐ ์‹œ๊ฐ„์ด ๋‹ค์‹œ 3.5-4์ดˆ๋กœ ์ค„์—ˆ์Šต๋‹ˆ๋‹ค.

@graphefruit ๋„ค, ํ•˜์ง€๋งŒ ์žฌ์„ค์น˜๋Š” ์˜ฌ๋ฐ”๋ฅธ ๋ฐฉ๋ฒ•์ด ๋  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ;-)
ํฅ๋ฏธ๋กœ์šด(ํ”„๋กœํŒŒ์ผ๋ง)์€ ๋„ˆ๋ฌด ๋งŽ์€ ์‹œ๊ฐ„์ด ์†Œ์š”๋˜๊ณ  ๋‹ค๋ฅธ(๊ฐํ˜•) ํ”„๋ ˆ์ž„์›Œํฌ(Ionic 1, OnsenUI ๋“ฑ)๊ฐ€ ๋™์ผํ•œ ์žฅ์น˜์—์„œ ๊ฐ„๋‹จํ•œ "hello world" ์•ฑ์„ ์‹œ์ž‘ํ•˜๋Š” ์†๋„์ž…๋‹ˆ๋‹ค.
๋‚ด (๋„ˆ๋ฌด ์˜ค๋ž˜๋˜์ง€ ์•Š์€) Moto G2์—์„œ RC4 conf ์•ฑ์˜ ์‹œ์ž‘ ์‹œ๊ฐ„์€ ์•ฝ 6์ดˆ์ž…๋‹ˆ๋‹ค:-/

@mpaland ๋งž์Šต๋‹ˆ๋‹ค . ์˜ฌ๋ฐ”๋ฅธ ๋ฐฉ๋ฒ•์€ ์•„๋‹ˆ์ง€๋งŒ ๋•Œ๋กœ๋Š” ์ฐพ์€ ๋ชจ๋“  ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ•์ด๋ฉฐ ionic์ด ์ด๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.
์ด์ „์— ์ผ๋ถ€ ๊ฒŒ์‹œ๋ฌผ์—์„œ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด Ionic1 ์•ฑ์„ Ionic2๋กœ ์ด์‹ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์‹œ์ž‘ ์‹œ๊ฐ„์€ 3์ดˆ์—์„œ ์ตœ๋Œ€ 4์ดˆ์˜€์Šต๋‹ˆ๋‹ค.
ํฌํŒ…๋œ ํ”„๋กœ์ ํŠธ๋Š” ๋™์ผํ•œ ์žฅ์น˜์—์„œ 7-8์ดˆ๊ฐ€ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค.

HTC One M8(์•ˆ๋“œ๋กœ์ด๋“œ 6.0 - ๋ฐ”๋‹๋ผ)

๊ทธ๋ž˜์„œ ๊ท€ํ•˜์˜ ์ œ์•ˆ ํ›„์— Ionic1 ํ”„๋กœ์ ํŠธ๋ฅผ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค.

  1. ionic start myproject
  2. ionic platform add android
  3. ionic build android
  4. Ionic1 - HTC One M8(Android 6.0)์˜ ์‹œ์ž‘ ์‹œ๊ฐ„์€ ์•ฝ 2.5์ดˆ์˜€์Šต๋‹ˆ๋‹ค.
  5. Ionic 2 - ํšŒ์˜ ์•ฑ - ์‹œ์ž‘ ์‹œ๊ฐ„: 5์ดˆ
  6. Ionic 2- ์Šคํƒ€ํ„ฐ ์•ฑ - ์‹œ์ž‘ ์‹œ๊ฐ„: 4์ดˆ
  7. Ionic 1 - ๋‚ด ์‚ฌ์šฉ์ž ์ง€์ • ํ”„๋กœ์ ํŠธ: 4์ดˆ
  8. Ionic2 - ๋‚ด ์‚ฌ์šฉ์ž ์ง€์ • ํ”„๋กœ์ ํŠธ: 7์ดˆ.

์ถฉ๊ฒฉ! - ์ด ๋ฌธ์žฅ์€ ๋ฌด์‹œํ•˜์„ธ์š”.

๋”ฐ๋ผ์„œ ionic 2์˜ ์Šคํƒ€ํ„ฐ ์•ฑ์„ ์‚ฌ์šฉํ•˜๋”๋ผ๋„ ์ฐจ์ด๋Š” ์—ฌ์ „ํžˆ ์•ฝ 1.5์ดˆ์ž…๋‹ˆ๋‹ค.
HTC One M8์€ 2014๋…„ 3์›”์— ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋ชจํ†  G(์•ˆ๋“œ๋กœ์ด๋“œ 5.1)

์ด์ œ ๋‹ค์Œ ๊ธฐ๊ธฐ์ธ Moto G - Android 5.1๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

  1. Ionic1 - 4.5~5.5์ดˆ
  2. Ionic 2 - ํšŒ์˜ ์•ฑ: 8.5~10.5์ดˆ
  3. Ionic 2 - ์Šคํƒ€ํ„ฐ ์•ฑ: 6~6.5์ดˆ
  4. Ionic 1 - ๋‚ด ์‚ฌ์šฉ์ž ์ง€์ • ํ”„๋กœ์ ํŠธ - 5.5 - 6์ดˆ
  5. Ionic 2 - ๋‚ด ๋งž์ถค ํ”„๋กœ์ ํŠธ - 7-8์ดˆ

๋ณด์‹œ๋‹ค์‹œํ”ผ ์•„์ง 1.5์ดˆ์˜ ์ฐจ์ด๊ฐ€ ์žˆ๊ณ  ํšŒ์˜ ์•ฑ์€ ํ›จ์”ฌ ๋” ๋งŽ์€ ์‹œ๊ฐ„์ด ํ•„์š”ํ–ˆ์Šต๋‹ˆ๋‹ค
Moto G๋Š” 2013๋…„ 11์›”์— ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ์ง€๊ธˆ ๋ชจ๋“  ์งˆ๋ฌธ์— ๋‹ตํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

_๊ทธ๋ฆฌ๊ณ  ์˜ˆ: ionic2์˜ ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋Š” RC4์™€ ์•ฑ์Šคํฌ๋ฆฝํŠธ 0.0.47๋กœ ์ปดํŒŒ์ผ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ตœ์‹  Ionic CLI๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ? ๋‹น์‹ ์˜ ๋ฌถ์Œ์€ ์–ผ๋งˆ๋‚˜ ํฝ๋‹ˆ๊นŒ? npm run ionic:build --aot ์ปดํŒŒ์ผํ•˜๊ณ  platformBrowserDynamic ๊ฐ€ ์—†๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? --aot ๋Š” ์ถ•์†Œ๋ฅผ ๊ฑด๋„ˆ๋›ฐ์ง€๋งŒ ์—ฌ์ „ํžˆ AoT ๋นŒ๋“œ๋ฅผ ์ œ๊ณตํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

@danbucholtz ํ™•์ธํ•˜๊ณ  15๋ถ„ ์ €์งˆ๋ €์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ง€๋‚œ 2์‹œ๊ฐ„ ๋™์•ˆ ์ด ๊ฒŒ์‹œ๋ฌผ์„ ๋„ˆ๋ฌด ๋งŽ์ด ์ปดํŒŒ์ผํ•ด์„œ =/ ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค.

platformBrowserDynamic ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์•ฑ์ด ์‹œ์ž‘๋  ๋•Œ ๋ธŒ๋ผ์šฐ์ €์—์„œ ngc ๋ฅผ ์‹คํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ถ๊ทน์ ์œผ๋กœ AoT๋ฅผ ํ•˜๋“  ํ•˜์ง€ ์•Š๋“  ๋ธŒ๋ผ์šฐ์ €์—์„œ ์—ฌ์ „ํžˆ .ngfactory.js` ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ „ ๊ฒŒ์‹œ๋ฌผ์—์„œ๋Š” ์•ฝ 20์ดˆ ์ •๋„ ์†Œ์š”๋ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ปดํŒŒ์ผํ•˜๋Š” ๋ฐ 20์ดˆ + ์‹œ์ž‘ 5์ดˆ = ๊ธด ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค.

5์ดˆ๋Š” ์—ฌ์ „ํžˆ ๊ธธ๋‹ค. ๋ญ”๊ฐ€ ์ œ๋Œ€๋กœ ๋งž์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

@danbucholtz ์•ˆ๋…• ๋˜ dan! ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ์ตœ์‹  ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์„ค์น˜ํ–ˆ์ง€๋งŒ ์‚ฌ์šฉ์ž ์ง€์ • ํ”„๋กœ์ ํŠธ์—์„œ npm run ionic:build --aot๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. - ์ด๋ฏธ ์ƒ๋‹จ์— ๋‚ด ๊ฒŒ์‹œ๋ฌผ์„ ์—…๋ฐ์ดํŠธํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์ง€๊ธˆ ์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค๊ณ  ์ปดํŒŒ์ผํ•˜๊ณ  ์„œ๋ช…ํ–ˆ์œผ๋ฉฐ ์ด์ œ ์‹œ์ž‘ ์‹œ๊ฐ„์ด 7์ดˆ๋กœ ๋Œ์•„๊ฐ‘๋‹ˆ๋‹ค.

_๋‹ค๋ฅธ ๋ชจ๋“  ๊ฒ€์‚ฌ๋ฅผ ์–ธ๊ธ‰ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค_ - ํšŒ์˜/์Šคํƒ€ํ„ฐ ์•ฑ์€ ๋ชจ๋‘ ionic:build --aot๋ฅผ ์‚ฌ์šฉํ–ˆ์œผ๋ฉฐ platformBrowserDynamic์ด NOT ์žˆ์Šต๋‹ˆ๋‹ค.
๋ชจ๋“  ZIPS๋ฅผ ์ถ”์ถœํ•˜๊ณ  main.js ์‚ดํŽด๋ณด์•˜์Šต๋‹ˆ๋‹ค.

๋‹ค์‹œ ํ•œ ๋ฒˆ ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค.

@graphefruit ๋‹ค์–‘ํ•œ ๊ธฐ๊ธฐ์—์„œ ์ด๋Ÿฌํ•œ ํ†ต๊ณ„๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ๋งŽ์€ ๋…ธ๋ ฅ์„ ๊ธฐ์šธ์ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค ๐Ÿ‘
@danbucholtz @jgw96 , abt Ionic Team์ด Play ์Šคํ† ์–ด์—์„œ ionic-conference-app์˜ ํ”„๋กœ๋•์…˜ ๋ฒ„์ „์„ ์ถœ์‹œํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ์ดˆ๊ธฐ ๋กœ๋“œ ์‹œ ๋ช‡ ๊ฐ€์ง€ ํ†ต๊ณ„๋ฅผ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ์˜ ๋กœ๋“œ ์‹œ๊ฐ„์ด ์ผ์น˜ํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด ์•„๋งˆ๋„ ์šฐ๋ฆฌ ๋นŒ๋“œ์— ๋ญ”๊ฐ€ ์ž˜๋ชป๋œ ์ผ์„ ํ•˜๊ณ  ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@danbucholtz RC.0 ๋ถ€ํ„ฐ ์ด๋Ÿฌ๊ณ  ์žˆ๋Š”๋ฐ ์•ˆ๋“œ๋กœ์ด๋“œ์—์„œ 5์ดˆ๋„ ์•ˆ๋˜์–ด ์‹œ๋™์„ ๊ฑธ ์ˆ˜ ์žˆ๋Š” ์‚ฌ๋žŒ์ด ์žˆ์„์ง€ ์˜๋ฌธ์ž…๋‹ˆ๋‹ค. Ionic 1 ์‹œ์ž‘ ์‹œ๊ฐ„์€ Ionic 2๋ณด๋‹ค ๋‚ซ์Šต๋‹ˆ๋‹ค.

์‚ดํŽด๋ณด๊ณ  ํ”„๋กœํŒŒ์ผ๋ง์„ ์ข€ ํ•ด์ฃผ์‹œ๊ฒ ์–ด์š”?
์•ฑ์„ ๋นŒ๋“œํ•˜๊ธฐ ์œ„ํ•ด ์˜ฌ๋ฐ”๋ฅธ ์ ˆ์ฐจ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š”์ง€ ๋จผ์ € ํ™•์ธํ•˜๋ ค๊ณ  ํ•˜์‹œ์ง€๋งŒ ์ด ๋ฌธ์ œ๋Š” ์ง€๋‚œ ๋ช‡ ๋‹ฌ ๋™์•ˆ ํฌ๊ฒŒ ์›€์ง์ด์ง€ ์•Š์•˜์œผ๋ฉฐ ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž๊ฐ€ ์ด ๋ฌธ์ œ๋ฅผ ๋ณด๊ณ ํ•  ๋•Œ ์•„๋งˆ๋„ ๋‹ค์Œ์œผ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋นŒ๋“œ ์Šคํฌ๋ฆฝํŠธ์˜ ์ž˜๋ชป๋œ ์‚ฌ์šฉ.
์‹œ์ž‘ํ•˜๋Š” ๋ฐ 5์ดˆ(์—ฌ๊ธฐ์„œ ๊ฐ€์žฅ ์ข‹์€ ์‹œ๋‚˜๋ฆฌ์˜ค)๋Š” ๊ฑฐ์˜ ๋ชจ๋“  Android ์•ฑ์— ๋Œ€ํ•œ ์‡ผ ์Šคํ† ํผ์ž…๋‹ˆ๋‹ค.

๋‚ด ํ†ต๊ณ„:
Sony Z3 Compact Android 6.0.1 - AOT/์ œํ’ˆ/์ตœ์†Œํ™” ๋นŒ๋“œ(2 MiB JS ๋ฒˆ๋“ค)๋Š” Crosswalk๊ฐ€ ์žˆ๊ฑฐ๋‚˜ ์—†๋Š” ์ƒํƒœ์—์„œ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ 6์ดˆ๊ฐ€ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. ๋Š๋ฆฐ ์žฅ์น˜์—์„œ๋Š” ํ›จ์”ฌ ๋” ๋งŽ์€ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค(๋‚ด ์•ฑ์„ ํ…Œ์ŠคํŠธํ•œ ์‚ฌ์šฉ์ž๋Š” 10์ดˆ ์ด์ƒ์„ ๋ณด๊ณ ํ–ˆ์Šต๋‹ˆ๋‹ค).

@danbucholtz ํŒ€์˜ ์žฅ์น˜ ํ…Œ์ŠคํŠธ ์„ค์ •์„ ๊ณต์œ ํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค๊ณผ ๊ฐ™์€ ์‹œ์ž‘ ์ง€์—ฐ์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š๋Š” ์ด์œ ๋Š” ํ™•์‹คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„, ์ž์„ธํ•œ ์ง„๋‹จ ๋ฐ ํ…Œ์ŠคํŠธ ์ •๋ณด์— ๋Œ€ํ•ด _์ •๋ง_ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ํ˜„์žฌ ์šฐ๋ฆฌ์˜ ์ตœ์šฐ์„  ์ˆœ์œ„์ด๋ฉฐ ์—ฌ๊ธฐ์—์„œ ์šฐ๋ฆฌ ์ค‘ ์ผ๋ถ€๋Š” ๊ธด ๋กœ๋“œ ์‹œ๊ฐ„์„ ๋ณด์ง€ ๋ชปํ•˜๋Š” ๋ฐ˜๋ฉด ๋‹ค๋ฅธ ์ผ๋ถ€๋Š” ์žฅ์น˜/OS/๋“ฑ์— ๋”ฐ๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ๋ฒ”์œ„๋ฅผ ์ขํžˆ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ถ”๊ฐ€ ์ •๋ณด๊ฐ€ ์žˆ์œผ๋ฉด ์–ธ์ œ๋“ ์ง€ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค.

@mlynch ๋ˆ„๋ฝ๋œ 5์ดˆ๋Š” ์•„๋‹ˆ์ง€๋งŒ ์ ˆ์•ฝํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ๋Š” ์‹œ๊ฐ„์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

https://github.com/driftyco/ionic-storage/issues/54

์ด์˜จ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(์ €์žฅ์†Œ) ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋‘ ๋ฒˆ(ํ•œ ๋ฒˆ์ด ์•„๋‹ˆ๋ผ) ์ดˆ๊ธฐํ™”๋˜๊ณ  ์žˆ๋‹ค๋Š” ์ง๊ฐ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๋งค์šฐ ํ‹€๋ฆด ์ˆ˜ ์žˆ์ง€๋งŒ ์—ฌ์ „ํžˆ ์‹œ์ž‘ ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ์ถ”๊ตฌํ•˜๋Š” ๋™์•ˆ ๊ณ ๋ ค๋ฅผ ์œ„ํ•ด ์ด๊ฒƒ์„ ๋˜์กŒ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ ์—ฌ๊ธฐ์— ๋” ๋„“์€ ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ

์•ˆ๋…•ํ•˜์‹ญ๋‹ˆ๊นŒ,
๋‹ค๋ฅธ ์žฅ์น˜๋ฅผ ํ…Œ์ŠคํŠธํ–ˆ์Šต๋‹ˆ๋‹ค.

๋„ฅ์„œ์Šค 7(2012) - ์•ˆ๋“œ๋กœ์ด๋“œ 4.1

Ionic 1 - ์Šคํƒ€ํ„ฐ ์•ฑ: 4์ดˆ
Ionic 2 - ํšŒ์˜ ์•ฑ: 7์ดˆ
Ionic 2 - ์Šคํƒ€ํ„ฐ ์•ฑ: 5.5์ดˆ
Ionic 1 - ๋‚ด ์‚ฌ์šฉ์ž ์ง€์ • ํ”„๋กœ์ ํŠธ - 5.5์ดˆ
Ionic 2 - ๋‚ด ์‚ฌ์šฉ์ž ์ง€์ • ํ”„๋กœ์ ํŠธ - 8.5์ดˆ

์˜ค๋Š˜ ์ €๋…์— Android 6.0์ด ํฌํ•จ๋œ Ulefone-Metal์˜ ๋˜ ๋‹ค๋ฅธ ํ…Œ์ŠคํŠธ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ธ์‚ฌ๋ง
์ž๋ชฝ

Ionic์„ 2.1.17๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๊ณ  ionic run android --prod ์‹คํ–‰ํ•œ ํ›„ ์„ฑ๋Šฅ์ด ํฌ๊ฒŒ ํ–ฅ์ƒ๋˜์—ˆ์œผ๋ฉฐ ๋‚ด ์•ฑ์ด 2~3์ดˆ ์ด๋‚ด์— ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค. ๋ญ๊ฐ€ ๋‹ฌ๋ผ์กŒ๋Š”์ง€๋Š” ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ ์•„์ฃผ ๋งŒ์กฑ์Šค๋Ÿฝ์Šต๋‹ˆ๋‹ค. :์Šค๋งˆ์ผ๋ฆฌ:

@PrithiviRajG ๋” ๋งŽ์€ ์ •๋ณด๋ฅผ ๊ณต์œ ํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

  1. ์•ฑ์˜ ํฌ๊ธฐ๋Š” ์–ผ๋งˆ์ž…๋‹ˆ๊นŒ?
  2. ionic info - ์ •๋ณด
  3. package.json - ์ •๋ณด
  4. ์„ค์น˜๋œ ํ”Œ๋Ÿฌ๊ทธ์ธ / ํƒ€์‚ฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ
  5. ์–ด๋–ค ์žฅ์น˜๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?
  6. starter-app ๋ฐ ionic conference app ๋กœ๋„ ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?
    ๋ฏธ๋ฆฌ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค
    ์ž๋ชฝ

@grapefruit

  1. ๋‚ด Apk ํฌ๊ธฐ๋Š” 7MB, WWW ํด๋”์˜ ํฌ๊ธฐ๋Š” 7.88MB, ํ”Œ๋Ÿฌ๊ทธ์ธ ํด๋”๋Š” 67.1MB, ๋ฆฌ์†Œ์Šค ํด๋”๋Š” 1.01MB์ž…๋‹ˆ๋‹ค.
  2. ionic info
 ordova CLI: 6.4.0
Ionic Framework Version: 2.0.0-rc.2
Ionic CLI Version: 2.1.17
Ionic App Lib Version: 2.1.7
Ionic App Scripts Version: 0.0.39
ios-deploy version: Not installed
ios-sim version: Not installed
OS: Windows 7
Node Version: v6.7.0
Xcode version: Not installed

  1. package.json
{
  "name": "ionic-app-base",
  "author": "Ionic Framework",
  "homepage": "http://ionicframework.com/",
  "private": true,
  "scripts": {
    "build": "ionic-app-scripts build",
    "watch": "ionic-app-scripts watch",
    "serve:before": "watch",
    "emulate:before": "build",
    "deploy:before": "build",
    "build:before": "build",
    "run:before": "build"
  },
  "dependencies": {
    "@angular/common": "2.1.1",
    "@angular/compiler": "2.1.1",
    "@angular/compiler-cli": "2.1.1",
    "@angular/core": "2.1.1",
    "@angular/forms": "2.1.1",
    "@angular/http": "2.1.1",
    "@angular/platform-browser": "2.1.1",
    "@angular/platform-browser-dynamic": "2.1.1",
    "@angular/platform-server": "2.1.1",
    "@ionic/cloud-angular": "0.5.2",
    "@ionic/storage": "1.1.6",
    "angular2-swing": "^0.10.0",
    "ionic-angular": "2.0.0-rc.2",
    "ionic-native": "2.2.3",
    "ionicons": "3.0.0",
    "rxjs": "5.0.0-beta.12",
    "zone.js": "0.6.21"
  },
  "devDependencies": {
    "@ionic/app-scripts": "0.0.39",
    "typescript": "2.0.3"
  }
}

  1. ์„ค์น˜๋œ ํ”Œ๋Ÿฌ๊ทธ์ธ
cordova-plugin-device
cordova-plugin-facebook4
cordova-plugin-googleplus
cordova-plugin-nativeaudio
cordova-plugin-splashscreen
cordova-plugin-statusbar
cordova-plugin-whitelist
ionic-plugin-keyboard
angular2-swing
  1. ๊ธฐ๊ธฐ ์ •๋ณด: MOTO G 1์„ธ๋Œ€ - Android 5.1

    1. ๊ณง ์‹œ์ž‘ ์•ฑ๊ณผ ์ด์˜จ ํšŒ์˜๋ฅผ ํ…Œ์ŠคํŠธํ•˜๊ณ  ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค.

@PrithiviRajG ์ •๋ณด ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์ตœ์‹  ๋ฒ„์ „์ด ์•„๋‹Œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

Cordova CLI: 6.4.0
Ionic Framework Version: 2.0.0-rc.2
Ionic CLI Version: 2.1.17
Ionic App Lib Version: 2.1.7
Ionic App Scripts Version: 0.0.39
ios-deploy version: Not installed
ios-sim version: Not installed
OS: Windows 7
Node Version: v6.7.0
Xcode version: Not installed

-> RC4๊ฐ€ ์•„๋‹Œ RC2๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ionic ์Šคํฌ๋ฆฝํŠธ๋„ ์ด์ œ 0.0.47์— ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์ด๊ฒƒ์€ @jgw96์— ๋Œ€ํ•œ ํ‘œ์‹œ

์•ˆ๋…•ํ•˜์‹ญ๋‹ˆ๊นŒ,
๋‹ค๋ฅธ ์žฅ์น˜๋ฅผ ํ…Œ์ŠคํŠธํ–ˆ์Šต๋‹ˆ๋‹ค.

์šธ๋ ˆํฐ ๋ฉ”ํƒˆ(์•ˆ๋“œ๋กœ์ด๋“œ 6.0)

Ionic 1 - ์Šคํƒ€ํ„ฐ ์•ฑ: 3.5์ดˆ
Ionic 2 - ํšŒ์˜ ์•ฑ: 5์ดˆ
Ionic 2 - ์Šคํƒ€ํ„ฐ ์•ฑ: 4.5 - 4.7์ดˆ
Ionic 1 - ๋‚ด ์‚ฌ์šฉ์ž ์ง€์ • ํ”„๋กœ์ ํŠธ - 5์ดˆ
Ionic 2 - ๋‚ด ์‚ฌ์šฉ์ž ์ง€์ • ํ”„๋กœ์ ํŠธ - 7์ดˆ

์ธ์‚ฌ๋ง
์ž๋ชฝ

@mlynch ๋‹จ์ˆœํžˆ ์ดˆ๊ธฐ ๋กœ๋“œ ์‹œ๊ฐ„์ด ๊ฐœ์„ ๋˜๊ณ  ์žˆ๋‹ค๋Š” ์‚ฌ์‹ค์„ ์•Œ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.
@danbucholtz ํ˜„์žฌ tree-shaking ์ž‘์—…์˜ ์ผ๋ถ€๊ฐ€ ์ˆ˜์ •๋ ๊นŒ์š” ์•„๋‹ˆ๋ฉด ๋ณ„๋„์˜ Android ์ „์šฉ ์ˆ˜์ •์ด ๋ ๊นŒ์š”?

ํšŒ์˜๋ก์—์„œ Dan์˜ ์ž‘์—…์— ๋Œ€ํ•ด ์•Œ๊ฒŒ ๋˜์—ˆ๊ณ , ์—ฌ๋Ÿฌ๋ถ„๊ณผ ํ•จ๊ป˜ ์ผํ•˜๋Š” ๊ฒƒ์„ ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค. ํŒ€์ด ํ”„๋ ˆ์ž„์›Œํฌ ์ž‘์—…์— ๋Œ€ํ•ด ์–ผ๋งˆ๋‚˜ ํˆฌ๋ช…ํ–ˆ๋Š”์ง€ ๋ฏฟ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. :๋งˆ์Œ:

@savanvadalia ,

์šฐ๋ฆฌ๋Š” Ionic์„ ๋” ๋น ๋ฅด๊ฒŒ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ๊ฒฐ์ฝ” ๋…ธ๋ ฅํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ง€๊ธˆ ์šฐ๋ฆฌ๋Š” ์ ์ ˆํ•œ ํŠธ๋ฆฌ ์‰์ดํ‚น์ด ์ž‘๋™ํ•˜๋„๋ก ํ•˜๊ณ  ํด๋กœ์ € ์ปดํŒŒ์ผ๋Ÿฌ ์ง€์›์„ ๋ฐ›๋Š” ๋ฐ ์ง‘์ค‘ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํด๋กœ์ €๋Š” ๋‹ค๋ฅธ ๋Œ€์•ˆ๋ณด๋‹ค ํ›จ์”ฌ ๋” ์ž‘์€ JS ๋ฒˆ๋“ค์„ ์ƒ์„ฑํ•˜์—ฌ ๋กœ๋“œ ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋กœ๋“œํ•˜๊ณ  ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์‹œ๊ฐ„์„ ์ค„์ด๊ธฐ ์œ„ํ•ด ํ˜„์žฌ ์ฝ”๋“œ ๋ถ„ํ• ์„ ์กฐ์‚ฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

@danbucholtz ๋ฐ˜๊ฐ€์›Œ์š” . ์ ์  ๋” ๋นจ๋ผ์ง€๋Š” ๊ธฐ๋Šฅ์— ์–ด๋–ป๊ฒŒ ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์ €๋Š” ํ˜„์žฌ ์†Œ๋น„์ž ๊ธˆ์œต ๋ถ„์•ผ์˜ ์ƒˆ๋กœ์šด ์žฅ๊ธฐ ์ œํ’ˆ ๋ผ์ธ์— ๋Œ€ํ•œ ํ”„๋ก ํŠธ ์—”๋“œ ๋ฐ ๋ชจ๋ฐ”์ผ ๊ธฐ์ˆ ์„ ํ‰๊ฐ€ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ดˆ๊ธฐ ๋กœ๋”ฉ ์„ฑ๋Šฅ์€ ํ•„์ˆ˜์ ์ธ ๊ฒฐ์ • ์š”์†Œ์ž…๋‹ˆ๋‹ค.

์†Œ๊ทœ๋ชจ ์•ฑ์˜ ์ตœ๊ทผ ํ…Œ์ŠคํŠธ์—์„œ iOS/Android ์„ฑ๋Šฅ์€ ํ—ˆ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋ธŒ๋ผ์šฐ์ € ๋กœ๋”ฉ ์„ฑ๋Šฅ๋„ ์–ด๋Š ์ •๋„ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค. ๋‚˜์ค‘์— Server Side Rendering์„ ์†Œ๊ฐœํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋” ๋งŽ์€ ํŽ˜์ด์ง€์™€ ํƒ€์‚ฌ ๋ชจ๋“ˆ์„ ๋„์ž…ํ•˜๊ธฐ ์‹œ์ž‘ํ•  ๋•Œ ๊ฐ€์žฅ ์šฐ๋ ค๋˜๋Š” ๊ฒƒ์€ ์ดˆ๊ธฐ ๋กœ๋”ฉ ์„ฑ๋Šฅ์ž…๋‹ˆ๋‹ค.

Ionic2/Webview ์•ฑ์˜ ์ดˆ๊ธฐ ๋กœ๋“œ์—์„œ ์‹œ์ž‘ ํ™”๋ฉด์ด๋‚˜ ์ง„ํ–‰ ์ƒํ™ฉ์„ ํ‘œ์‹œํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ?

๊ทธ๋“ค์€ ํ‰๊ท . ์•ฑ์„ ๋กœ๋“œํ•˜๋Š” ๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์€ ์•ฝ 10์ดˆ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์‚ฌ๋žŒ๋“ค์ด ์•ฑ์„ ๋กœ๋“œํ•˜๊ธฐ ์œ„ํ•ด ์•ฝ 10์ดˆ๋ฅผ ๊ธฐ๋‹ค๋ ค์•ผ ํ•  ๋•Œ ๋‚˜์œ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ๋‚ด ์•ฑ์€ ํฌ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ €๋Š” npm run ionic:build --aot ์™€ ionic run android --prod ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋””๋ฐ”์ด์Šค์—์„œ ์‹คํ–‰ํ•˜๋Š”๋ฐ ์Šคํƒ€ํ„ฐ ์•ฑ์˜ ์ดˆ๊ธฐ ์‹œ๊ฐ„์€ 2์ดˆ ์ •๋„์ธ๋ฐ ์ œ ํ”„๋กœ์ ํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋‹ค๋ณด๋ฉด

์žกํžˆ์ง€ ์•Š์€ ์˜ค๋ฅ˜: "./app.module.ngfactory" ๋ชจ๋“ˆ์„ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

node_modules ๋ฐ www๋ฅผ ์ œ๊ฑฐํ–ˆ์ง€๋งŒ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
ionic run android ์‹คํ–‰ํ•˜๋ฉด ํ”„๋กœ์ ํŠธ๊ฐ€ ์ž‘๋™ํ•˜์ง€๋งŒ ์ดˆ๊ธฐ ์‹œ๊ฐ„์€ ์•ฝ 7-8์ดˆ์ž…๋‹ˆ๋‹ค.

์—ฌ๊ธฐ ๋‚ด ์ด์˜จ ์ •๋ณด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค

์ฝ”๋ฅด๋„๋ฐ” CLI: 6.4.0
Ionic ํ”„๋ ˆ์ž„์›Œํฌ ๋ฒ„์ „: 2.0.0-rc.4
Ionic CLI ๋ฒ„์ „: 2.1.18
Ionic ์•ฑ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฒ„์ „: 2.1.9
Ionic ์•ฑ ์Šคํฌ๋ฆฝํŠธ ๋ฒ„์ „: 0.0.48
ios-deploy ๋ฒ„์ „: ์„ค์น˜๋˜์ง€ ์•Š์Œ
ios-sim ๋ฒ„์ „: ์„ค์น˜๋˜์ง€ ์•Š์Œ
์šด์˜ ์ฒด์ œ: ์œˆ๋„์šฐ 10
๋…ธ๋“œ ๋ฒ„์ „: v6.6.0
Xcode ๋ฒ„์ „: ์„ค์น˜๋˜์ง€ ์•Š์Œ

์—…๋ฐ์ดํŠธ
typescript๋ฅผ "2.0.9"๋กœ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ๋ฌด์—‡์„ ํ•˜๋“ ์ง€ deviceready๋Š” 5์ดˆ ํ›„์— ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

๋ชจ๋‘,

์—…๋ฐ์ดํŠธ๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ํ”„๋ ˆ์ž„์›Œํฌ ์ž์ฒด๋ฅผ ํฌ๊ฒŒ ๊ฐœ์„ ํ•˜์—ฌ ํŠธ๋ฆฌ ์‰์ดํ‚น ๋ฐ ๋ฐ๋“œ ์ฝ”๋“œ ์ œ๊ฑฐ๋ฅผ ๊ฐœ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ฝ”๋“œ ๋ถ„ํ•  ๋ฐ ํด๋กœ์ € ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ์‹คํ—˜ํ•ด ์™”์œผ๋ฉฐ ์ด๋Ÿฌํ•œ ๊ฒฝ์šฐ ๋ฒˆ๋“ค ํฌ๊ธฐ๋ฅผ ํฌ๊ฒŒ ์ค„์˜€์Šต๋‹ˆ๋‹ค. ์‹คํ—˜ํ•˜๋Š” ๊ฒƒ์ด ํ•ต์‹ฌ ๋‹จ์–ด์ด๋ฉฐ ํ™ฉ๊ธˆ ์‹œ๊ฐ„์— ๋Œ€๋น„ํ•  ์ค€๋น„๊ฐ€ ๋˜๊ธฐ๊นŒ์ง€๋Š” ์•ฝ๊ฐ„์˜ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆด ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ด ์ฃผ์ œ์— ๋Œ€ํ•ด Angular ํŒ€๊ณผ ๋งค์šฐ ๊ธด๋ฐ€ํ•˜๊ฒŒ ํ˜‘๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

Closure Compiler๋Š” ๋†€๋ผ์šด ๋„๊ตฌ์ด์ง€๋งŒ ๊ทœ์น™์„ ๋”ฐ๋ฅด์ง€ ์•Š์œผ๋ฉด ๋งŽ์€ ํƒ€์‚ฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋˜๋Š” ์ž์ฒด ์•ฑ์„ ์†์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ด์— ๋Œ€ํ•ด ๊ฐ„๋‹จํ•˜๋ฉด์„œ๋„ ๊ฐ•๋ ฅํ•˜๊ณ  ์œ ์—ฐํ•œ ๊ฐœ๋ฐœ์ž ํ™˜๊ฒฝ์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฒˆ๋“ค ํฌ๊ธฐ ์ถ•์†Œ, ์ฝ”๋“œ ๋ถ„ํ•  ๋ฐ ์‹คํ–‰ ์†๋„ ๊ฐœ์„ ์€ ์šฐ๋ฆฌ์˜ ์ตœ์šฐ์„  ๊ณผ์ œ์ž…๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”,
๋‹จ

@danbucholtz ๋ฉ‹์ง€๋„ค์š” ! ๊ณผ๊ฑฐ์— Angular CLI ํŒ€์— ํด๋กœ์ € ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ์ œ์•ˆํ–ˆ์Šต๋‹ˆ๋‹ค. ํด๋กœ์ € ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ปดํŒŒ์ผ์„ ์„ ํƒ์ ์œผ๋กœ ๋งŒ๋“œ๋Š” ์Šค์œ„์น˜๊ฐ€ ๋„์ž…๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํด๋กœ์ € ์ปดํŒŒ์ผ๋Ÿฌ ์นœํ™”์ ์ธ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ์šฉ์ž๋Š” ํ‘œ์ค€ ๋ฐฉ์‹์œผ๋กœ ์ปดํŒŒ์ผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Ionic ํŒ€์€ ํ•ต์‹ฌ Ionic ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ Ionic ๋„ค์ดํ‹ฐ๋ธŒ๊ฐ€ ํด๋กœ์ € ์ปดํŒŒ์ผ๋Ÿฌ์™€ ์™„๋ฒฝํ•˜๊ฒŒ ํ˜ธํ™˜๋˜๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. BTW ํด๋กœ์ € ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ๋‹ฌ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ๊ณ ์˜ ์‹คํ–‰ ์†๋„๋ฅผ ๊ณต์œ ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

http://hybridtonative.com , NativeScript๋Š” ์•„์ง ๋ฏธ์„ฑ์ˆ™ํ•˜์ง€๋งŒ Ionic ๋ฌธ์ œ๊ฐ€ ๊ณ„์† ๋ฐœ์ƒํ•˜๊ณ  ์˜คํ”ˆ ํ‹ฐ์ผ“์ด ์ง€์†๋˜๊ฑฐ๋‚˜ ์ฆ๊ฐ€ํ•˜๊ณ  webview ๊ธฐ์ˆ ์ด ์ž์ฒด์ ์œผ๋กœ ํšŒ์ „ํ•˜๋ฉด์„œ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ž‘์—…ํ•˜๋Š” ๋Œ€์‹  ๊ธฐ์ˆ ์— ๋Œ€ํ•ด ์ž‘์—…ํ•˜๋„๋ก ํ•จ์— ๋”ฐ๋ผ ์ ์  ๋” ๋งค๋ ฅ์ ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์œผ๋กœ. ๊ธฐ๋ณธ ์ž‘์—…์กฐ์ฐจ๋„ ์—„์ฒญ๋‚œ ์–‘์˜ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•, ๋ฌธ์ œ ํŒŒ๊ธฐ, ๋งŽ์€ ์ฝ”๋“œ ์—…๋ฐ์ดํŠธ๊ฐ€ ํ•„์š”ํ•˜๊ณ , ๋ณ€๊ฒฝ ๋ฐ ์—…๋ฐ์ดํŠธ์— ๋”ฐ๋ผ ์ƒ์‚ฐ์ด ๋๋‚˜์ง€ ์•Š๋Š” ์—ฐ๋งˆ์˜ ์ง„ํ™ํƒ• ๊ธฐ๋ฐ˜์—์„œ ์ƒ์‚ฐ์„ ๋– ๋‚˜๋Š” ๊ฒƒ์€ ์‹ค์ œ๋กœ ๋‹ค๋ฅธ ๋‚˜์œ ๋””์ž์ธ ์„ ํƒ์„ ์ˆ˜์ •ํ•˜๋Š” ์ž˜๋ชป๋œ ๋””์ž์ธ ์„ ํƒ์˜ ๋ฒ„๊ทธ ์ˆ˜์ •์„ ์š”๊ตฌํ•ฉ๋‹ˆ๋‹ค. ํ•˜๋ฃจ๊ฐ€ ๋๋‚˜๋ฉด ์šฐ๋ฆฌ๋Š” ๊ฐ€๊ฒฉ์„ ์ง€๋ถˆํ•˜๊ณ  ์žˆ์œผ๋ฉฐ iOS์™€ Android ๋ชจ๋‘์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์•ฑ์„ ๊ฐœ๋ฐœํ•˜๋Š” ๊ฒƒ๊ณผ ๋น„์Šทํ•ฉ๋‹ˆ๋‹ค.

@barocsi ๊ณผ์žฅ? Angular 2์™€ ionic์ด ํ•จ๊ป˜ ์ž‘์—…ํ•˜๋Š” ๊ธฐ์ˆ ์˜ ์ตœ์ฒจ๋‹จ์— ์žˆ์œผ๋ฉฐ ์šฐ๋ฆฌ ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ์ตœ์ƒ์˜ ์กฐ์น˜๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ๊ณ„์‹ญ๋‹ˆ๊นŒ? ๋˜ํ•œ v2 ์•ˆ์ • ๋ฒ„์ „์€ ์•„์ง ์ถœ์‹œ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

@barocsi Ionic2 ๊ฐ€ ๋งˆ์Œ์—
์ž์‹ ์˜ ์•ต๊ทค๋Ÿฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‚ฌ์šฉํ•˜๋”๋ผ๋„ ์ด๋ฏธ ํ”„๋ ˆ์ž„์›Œํฌ์—์„œ ์ด์˜จ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  ์žˆ๋Š” ๋งŽ์€ ๋ฌธ์ œ๋ฅผ ์šฐ์—ฐํžˆ ๋ฐœ๊ฒฌํ•˜๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๋˜ํ•œ ์ด ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ์˜คํ”ˆ ์†Œ์Šค์ด๋ฉฐ ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์ด ์ž‘์—…ํ•˜๋Š” ์†๋„์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ๋˜๋Š” ํฌํฌํ•˜์—ฌ ์ž์‹ ๋งŒ์˜ ionic2-fork๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
Ionic2์— ๋ฆด๋ฆฌ์Šค ํ›„๋ณด๊ฐ€ ์žˆ๋”๋ผ๋„ ๋ฒ ํƒ€ ๋ฆด๋ฆฌ์Šค ์ฃผ๊ธฐ์—์„œ ๋ฐฉ๊ธˆ ๋‚˜์˜จ ๊ฒƒ์ด๋ผ๋„ ๋…ผ์Ÿํ•˜๊ฑฐ๋‚˜ ์šธํƒ€๋ฆฌ์—์„œ ๋ฌด์–ธ๊ฐ€๋ฅผ ๊นจ๊ณ  ์‹ถ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‹ˆ ์‹œ๊ฐ„์„ ์ข€ ์ฃผ์„ธ์š”. ๊ธฐ๋‹ค๋ฆด ์ˆ˜ ์—†๋‹ค๋ฉด ionic1์„ ํƒ€๊ณ  ์ด ์‹œ์žฅ์—์„œ ์ด๋ฏธ ๋ช‡ ๋…„์„ ์„ค์ •ํ•œ ํšก๋‹จ ๋ณด๋„๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.

์ œ์•ˆ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ํ˜„์žฌ ๋ฐ ๋ฏธ๋ž˜์˜ ๊ฒฐ์ •์— ๋Œ€ํ•œ ๋Œ€์•ˆ์ด ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ด๋ฏธ ๊ฐ•๋ ฅํ•˜๊ณ  ๋ฌด๊ฑฐ์šด Ionic V1 ๋ฐ V2 ์•ฑ์„ ๋ณด์œ ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ๊ฑฐ์˜ โ€‹โ€‹1.5๋…„ ๋™์•ˆ ์ด github ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์ „์ฒด์—์„œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  ๊ธฐ์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์นœ์ด์˜จ์„ฑ ์Šค๋ ˆ๋“œ์ผ์ง€๋ผ๋„ ์šฐ๋ฆฌ๋Š” ์ด ๊ธฐ์ˆ ์ด ์–ด๋””๋กœ ํ–ฅ ํ• ์ง€ ์˜ˆ์ƒํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋‹น์‹ ์˜ ์šฐ๋ ค๋ฅผ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‚ด ์ž์‹ ์˜ ๋ฌด๊ฑฐ์šด ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์—์„œ ์ผ๋ฐ˜ angularjs๋ฅผ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.
๋ฌธ์ œ๋Š” ๋‚ด๊ฐ€ ์—ฌ์ „ํžˆ ๋งŽ์€ ๋ฌธ์ œ๋ฅผ ์šฐ์—ฐํžˆ ๋ฐœ๊ฒฌํ–ˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ๋ชจ๋“  ๊ฒƒ์„ ์ง์ ‘ ์ž‘์„ฑํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ์ฒ˜์Œ๋ถ€ํ„ฐ ์ž‘์„ฑํ•˜์ง€ ์•Š์œผ๋ฉด ์กฐ๋งŒ๊ฐ„ ๊ฑฐ๊ธฐ์— ๋„๋‹ฌํ•˜๊ฒŒ ๋  ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
Angular-Material V1(์˜ˆ: ์„ฑ๋Šฅ)์— ํฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๊ณ  ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ง์ ‘ ํŒŒํ—ค์ณ์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋จธ์ง€๋Š” angularjs๋กœ ์ง์ ‘ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ๊ฑฐ๊ธฐ์—์„œ๋„ ์„ฑ๋Šฅ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ์ง€๊ฒฝ์— ์ด๋ฅด๋ €์Šต๋‹ˆ๋‹ค.
๊ทธ๋ž˜์„œ ๋‚˜๋Š” ๊ทธ๊ฒƒ๋“ค์„ ์ฐพ๊ณ  ๊ณ ์น˜๊ธฐ ์œ„ํ•ด ๋‚ด "์ž์‹ ์˜" ํ”„๋ ˆ์ž„์›Œํฌ์— ์‹œ๊ฐ„์„ ํ• ์• ํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋ž˜์„œ ๋‚˜๋Š” Ionic์˜ ๋ฌธ์ œ๋ฅผ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ๋‚˜ ์ž์‹ ๋„ ์ด๋Ÿฌํ•œ ๋ฌธ์ œ์— ๋น ์กŒ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
๊ทธ๋“ค์ด ํฌ๊ฑฐ๋‚˜ ํฐ ํšŒ์‚ฌ๋ผ ํ• ์ง€๋ผ๋„ ๊ทธ๋“ค์€ ๋˜ํ•œ ์ œํ•œ๋œ ์ž์›์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์œผ๋กœ Ionic2๋Š” ๋‹จ์ˆœํ•œ APP๊ฐ€ ์•„๋‹ˆ๋ผ ์›น์‚ฌ์ดํŠธ๋„ ์ œ๊ณตํ•˜๊ณ  UWP๋„ ์ง€์›ํ•˜๊ณ (๋งŽ์ด ๊ณ ํ†ต์Šค๋Ÿฝ์Šต๋‹ˆ๋‹ค) PWA๋„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
ํ•˜๋‚˜์˜ ํ”„๋ ˆ์ž„์›Œํฌ์— ๋„ˆ๋ฌด ๋งŽ์€ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์€ ์ฃผ๋กœ ์•ฑ์— ์‚ฌ์šฉ๋˜์ง€๋งŒ ๋‹ค๋ฅธ ๋งŽ์€ ๊ธฐ๋Šฅ๋„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
์ด ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋ฉด ๋งŽ์€ ์ข…์†์„ฑ๊ณผ ๊ด€๋ จ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ ๋‹น์‹ ์˜ ์šฐ๋ ค๋Š” ์ ๊ฒฉ์ด์ง€๋งŒ, ๋‚˜๋Š” ์˜คํžˆ๋ ค ์‹œ์žฅ์— ๋˜์ ธ์ง„ ์™„์ „ํ•œ ์ƒˆ๋กœ์šด ๊ธฐ์ˆ ์˜ ๋ฌธ์ œ๋ฅผ ๋ณด๊ณ  Ionic์ด ๊ทธ๊ฒƒ์„ ์žก์œผ๋ ค๊ณ  ์‹œ๋„ํ•˜๊ณ  ๊ทธ๊ฒƒ์— ๋งŽ์€ ์˜์กด์„ฑ์„ ์–ป์Šต๋‹ˆ๋‹ค.

@danbucholtz

Dan, ์ฝ”๋“œ ๋ถ„ํ• , ํด๋กœ์ € ์ปดํŒŒ์ผ๋Ÿฌ, ํŠธ๋ฆฌ ์‰์ดํ‚น์— ๋Œ€ํ•œ '์‹คํ—˜'์„ ๋‹ค์‹œ ํ•˜๋Š” ๊ท€ํ•˜์˜ ์˜๊ฒฌ์— ๋งค์šฐ ๊ณ ๋ฌด๋˜์–ด ์žˆ์œผ๋ฉฐ ์‹คํ–‰ ์†๋„๋Š” ionic2(1์›” 4์ผ)์˜ ํ˜„์žฌ ์ตœ์šฐ์„  ์ˆœ์œ„์ž…๋‹ˆ๋‹ค. Github์—์„œ ์ œ๊ณตํ•˜๋Š” ์˜ˆ์ œ ionic2 ํšŒ์˜ ์•ฑ์€ ๋ชจ๋‘๊ฐ€ ์ง„ํ–‰ ์ƒํ™ฉ์„ ๋น„๊ตํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ข‹์€ ๊ฐ„๋‹จํ•œ ๋ฒค์น˜๋งˆํฌ ์•ฑ์ž…๋‹ˆ๋‹ค. ๊ท€ํ•˜์˜ ์ž‘์—…์ด (๊ทธ๋ฆฌ๊ณ  ๋น ๋ฅด๊ฒŒ) ์ž˜ ์ง„ํ–‰๋˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ์š”์ฆ˜์—๋Š” ์‹œ์ž‘ ์‹œ๊ฐ„์ด <=3์ดˆ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์‚ฌ์šฉ์ž๊ฐ€ 6์ดˆ ์ด์ƒ '๋– ๋‚ ' ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์œผ๋ฉฐ ํ™•์‹คํžˆ ์˜์›ํžˆ '์‚ฌ๋ผ์ง‘๋‹ˆ๋‹ค'.

--prod๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋นŒ๋“œํ•˜๊ณ  ๋‚ด Nexus 7(2013) Android 6.0.1์—์„œ ์‹คํ–‰ํ•œ ํšŒ์˜ ์•ฑ์€ ํ˜„์žฌ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ์ตœ๋Œ€ 8์ดˆ๊ฐ€ ์†Œ์š”๋ฉ๋‹ˆ๋‹ค(์—ฌ๋Ÿฌ ์‹คํ–‰์— ๋Œ€ํ•œ ์Šคํ†ฑ์›Œ์น˜์˜ ํ‰๊ท  ์‹œ๊ฐ„).

์ž, ์•„์ง ๊ฐˆ ๊ธธ์ด ๋ฉ€์ง€๋งŒ, ์—ฌ๋Ÿฌ๋ถ„์˜ ์„ฑ๊ณต์„ ๊ธฐ์›ํ•ฉ๋‹ˆ๋‹ค!!! - ํŠนํžˆ ์ˆ™๋ จ๋œ ๊ฐœ๋ฐœ์ž์˜ ๊ด€์ ์—์„œ ionic2๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๊ตฌ์กฐ์™€ ๊ธฐ๋Šฅ์ด ์ •๋ง ๋งˆ์Œ์— ๋“ญ๋‹ˆ๋‹ค.

ํ•„

@barocsi ๋‹˜ ์˜ ์ƒํ™ฉ์€ ์ดํ•ด๊ฐ€
์š”์•ฝํ•˜์ž๋ฉด: ๋‚ด ์•ฑ ํ”„๋กœ์ ํŠธ๋Š” Android, iOS ๋ฐ Win10(๋ฐ์Šคํฌํ†ฑ)์—์„œ ์‹คํ–‰๋˜์–ด์•ผ ํ•˜๊ณ  ๋น ๋ฅด๊ฒŒ ์‹œ์ž‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. 2์ดˆ๊ฐ€ ์ตœ๋Œ€์ž…๋‹ˆ๋‹ค. ์˜ค๋ž˜๋œ(2๋…„์„ ์˜๋ฏธํ•˜๋Š”) ๊ธฐ๊ธฐ์—์„œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค.
๋งŽ์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ๊ฒฝํ—˜์œผ๋กœ ์ธํ•ด JS์™€ HTML๋กœ ์ž‘์„ฑํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋„ค์ดํ‹ฐ๋ธŒ(Java, Obj C) ์•ฑ ๋Œ€์‹  WebView ์•ฑ์œผ๋กœ ํ•„๋“œ๋ฅผ ์ขํž™๋‹ˆ๋‹ค.
ํŠน์ • ํ•˜๋“œ์›จ์–ด ์•ก์„ธ์Šค๊ฐ€ ํ•„์š”ํ•˜๋ฏ€๋กœ Cordova๊ฐ€ ์ข‹์€ ์„ ํƒ์ž…๋‹ˆ๋‹ค. NativeScript, Appcelerator, OnsenUI w/o ng2 ... ๊ทธ๋Ÿด ์ˆ˜๋„ ์žˆ์ง€๋งŒ ์•„์ด๋””์–ด๊ฐ€ ์ „ํ˜€ ๋งˆ์Œ์— ๋“ค์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ด ์—„์ฒญ๋‚œ ์ฝ”๋“œ ํฌ๊ธฐ์— ๋Œ€ํ•ด ng2๋ฅผ ๋น„๋‚œํ•˜๋Š” ์ˆœ๊ฐ„์— ์ ์ ˆํ•œ ํŠธ๋ฆฌ ์‰์ดํ‚น ๋ฐ ํด๋กœ์ € ์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ๋” ํฐ ํ”„๋กœ์ ํŠธ์—์„œ ์‹œ์ž‘ ์‹œ๊ฐ„์„ ํฌ๊ฒŒ ์ค„์ผ ์ˆ˜ ์žˆ์„์ง€ ํ™•์‹ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค(4-5 ์š”์†Œ ํ•„์š”). ์šฐ๋ฆฌ๋Š” ๋ณด๊ณ  ๊ธฐ๋‹ค๋ ค์•ผ ํ•ฉ๋‹ˆ๋‹ค...

@mpaland ์ด๋ฏธ Ionic1์„ ์‚ฌ์šฉํ•ด ๋ณด์…จ์Šต๋‹ˆ๊นŒ?
๊ตฌํ˜• ์žฅ์น˜์—์„œ๋„ 2์ดˆ์˜ ์‹œ์ž‘ ์‹œ๊ฐ„์„ ์–ป๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.
ionic1์ด ์—†๋Š” ๋‚ด ์‚ฌ์šฉ์ž ์ง€์ • ํ”„๋กœ์ ํŠธ์—๋Š” ์•ฝ 3์ดˆ์˜ ์‹œ์ž‘ ์‹œ๊ฐ„์ด ํ•„์š”ํ•˜๋ฉฐ ์—ฌ๊ธฐ์—๋Š” ๋‹ค์Œ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

  1. index.html
  2. ๋ถ„.css
  3. min.js

๊ทธ๋ฆฌ๊ณ  ๊ทธ๊ฒŒ ๋‹ค์•ผ.

์ด๋ฏธ ์ฝ”๋ฅด๋„๋ฐ”(๊ฐ๋„ ๋“ฑ)๋กœ ๊ทธ๋ ‡๊ฒŒ ๋น ๋ฅธ ๋กœ๋”ฉ ์‹œ๊ฐ„์„ ๋‹ฌ์„ฑํ–ˆ์Šต๋‹ˆ๊นŒ?

@graphefruit , ์•„๋‹ˆ์š”, Ionic 1์„ ์‹œ๋„ํ•˜์ง€ ์•Š์•˜๊ณ  ์•„์ง ๋‹ค๋ฅธ ๊ฒƒ์„ ์‹œ๋„ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด Ionic 2๊ฐ€ ๋‚ด ํ”„๋กœ์ ํŠธ์— ๊ฐ€์žฅ ์ ํ•ฉํ•˜๋‹ค๋Š” ๊ฒƒ์„ ์•Œ์•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๋งํ–ˆ๋“ฏ์ด, ๋‚˜๋Š” ๋‹จ์ง€ ๋‹ค๋ฅธ ์˜ต์…˜์„ ํ‰๊ฐ€ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. JS๊ฐ€ ์žˆ๋Š” WebView๋Š” ์—ฌ์ „ํžˆ _my_ ์ตœ์„ ์˜ ์„ ํƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ €๋Š” ng์™€ ionic ํŒ€์ด ๋ฐœ์ „ํ•˜๊ธฐ๋ฅผ ๊ณ ๋Œ€ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

@grapefruit
๋‚˜๋Š” ionic2๊ฐ€ ๋งˆ์นจ๋‚ด ๊ตฌํ˜• ์žฅ์น˜์—์„œ๋„ <=3์ดˆ ์‹œ์ž‘์„ ๋‹ฌ์„ฑํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด๋ฏธ '์ฆ‰์‹œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ' ๋‹ค๋ฅธ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ํ”„๋ ˆ์ž„์›Œํฌ + ์ฝ”๋ฅด๋„๋ฐ”๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ฅผ ๋‹ฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋‚˜๋Š” angular2๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์ถ•๋œ ํ›Œ๋ฅญํ•œ ํ˜ˆํ†ต์„ ๊ฐ€์ง€๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ionic2๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ํ›จ์”ฌ ์„ ํ˜ธํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ๋‚˜ ๊ฐ™์€ ๊ฒฝํ—˜์ด ํ’๋ถ€ํ•œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋†’์ด ํ‰๊ฐ€ํ•˜๋Š” ๋ชจ๋“  ๊ฒƒ์ด ํ›Œ๋ฅญํ•œ ์ง€์›, ๋ฌธ์„œ, ์‹œ์„ค ๋“ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

@philrob ๋‹ค๋ฅธ Hybrid Framework + Cordova(ํ”„๋กœ์ ํŠธ์— ํ•„์š”ํ•œ ๋ชจ๋“  ๊ฒƒ ํฌํ•จ)๊ฐ€ 3์ดˆ ๋ฏธ๋งŒ์œผ๋กœ ์ œ๊ณต

๋กœ๋“œ๊ทธ๋ ˆ๊ทธ
๋‹ค๋ฅธ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ๋„์ž…ํ•˜๊ธฐ์— ์ ์ ˆํ•œ ์žฅ์†Œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋‹จ์ง€ ionic2 ํŒ€์ด <=3์ดˆ๋ผ๋Š” ๋‚˜์˜ ์—ด๋ง์— ๋” ๊ฐ€๊นŒ์›Œ์ง€๋„๋ก ํ•˜๋Š” ์ถœ์‹œ ์‹œ๊ฐ„์˜ ์ƒ๋‹นํ•œ ๊ฐ์†Œ๋ฅผ ๋‹ฌ์„ฑํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ผ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š”
๋‚ด ionic2 ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ์—ฌ์ „ํžˆ 10์ดˆ๊ฐ€ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค.๊ทธ๋Ÿฌ๋‚˜ ionic1 ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์€ 4์ดˆ๋งŒ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค.์ดˆ๊ธฐ ๋กœ๋”ฉ ์‹œ๊ฐ„์„ ๊ฐœ์„ ํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.์ œ์•ˆํ•˜์‹ญ์‹œ์˜ค.์ด๊ฒƒ์€ ๋งค์šฐ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

@philrob ์ง„์ง€ํ•˜๊ฒŒ, ๋‹ค๋ฅธ ์˜๊ฒฌ์„ ํ™•์ธํ•˜๋ฉด ํ•ญ์ƒ ๋น„๊ต๊ฐ€ ์žˆ์Œ์„ ๋นจ๋ฆฌ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์  ์žฅ, ์ด ์Šค๋ ˆ๋“œ์—๋„ ๊ทธ๊ฒƒ๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹น์‹ ์ด ๋งํ•˜๋Š” ๊ฒƒ์€ ๊ฑฐ์ง“๋ง์ด ์•„๋‹ˆ์ง€๋งŒ, Cordova ์ปจํ…Œ์ด๋„ˆ ๋‚ด์—์„œ jQuery(์˜ˆ์ œ) ์ด์ƒ์„ ์‹คํ–‰ํ•˜์ง€ ์•Š๋Š” ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์•ฑ์ด 3์ดˆ ์ด๋‚ด์— ์—ด๋ฆฌ๋Š” ๊ฒƒ์„ ์„ค๋ช…ํ•˜๋Š” ๊ฒƒ์€ ์™„์ „ํžˆ ํ„ฐ๋ฌด๋‹ˆ์—†๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์Šคํƒ€์ผ์„ ์ฒ˜๋ฆฌํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ Ionic๋งŒํผ ๋ณต์žกํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๊ฑฐ๋Œ€ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(angular2)์— ์˜์กดํ•˜์ง€ ์•Š๋Š” ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ๋ฐค๊ณผ ๋‚ฎ์„ ๋น„๊ตํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋ง๋„ ์•ˆ๋ผ

@mobinius-shreesha๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ionic build android --prod ๋˜๋Š” ionic run android --prod ๋กœ ์‹คํ–‰ํ•˜์—ฌ ์‹œ์ž‘ ์‹œ๊ฐ„์„ 5์ดˆ๋กœ ์–ป์Šต๋‹ˆ๋‹ค. ๋””๋ฒ„๊ทธ ๋ชจ๋“œ ionic run android ์—์„œ ์‹คํ–‰ํ•˜๋ฉด ์‹œ๊ฐ„์ด 10์ดˆ ์ด์ƒ ๋Š˜์–ด๋‚ฉ๋‹ˆ๋‹ค.

๋กœ๋“œ๊ทธ๋ ˆ๊ทธ

์šฐ๋ฆฌ๊ฐ€ ๋™์˜ํ•˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ์ด๊ฒƒ์ด ๋‚ด๊ฐ€ ์˜๋„์ ์œผ๋กœ ๋‚ด Nexus 7(2013) Android 6.0.1์šฉ์œผ๋กœ ์ถœ์‹œ ํƒ€์ด๋ฐ(~8์ดˆ)์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด Github์˜ ionic2 ํšŒ์˜ ์•ฑ(--prod๋กœ ๋นŒ๋“œ)์„ ์‚ฌ์šฉํ•˜๊ธฐ๋กœ ์„ ํƒํ•œ ์ด์œ ์ž…๋‹ˆ๋‹ค. ๋ถ„๋ช…ํžˆ ๋‹ค๋ฅธ ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ ๋™์ผํ•œ ์žฅ๋น„์—์„œ ๋” ๋น ๋ฅธ ์‹คํ–‰ ์‹œ๊ฐ„์„ ๋‹ฌ์„ฑํ•˜๊ณ  ์—ฌ์ „ํžˆ ๋‚ด๊ฐ€ ํ•„์š”ํ•œ ๊ธฐ๋Šฅ(์Šคํƒ€์ผ์ด ์ง€์ •๋œ UI ๋ชจ๋ฐ”์ผ ์œ„์ ฏ ํฌํ•จ)์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด FOR ME์™€ ๊ด€๋ จ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค - ์ €๋Š” ์ด์ „์— ์–ธ๊ธ‰ํ•œ ๋‹ค๋ฅธ ๋ชจ๋“  ์ค‘์š”ํ•œ ์ด์œ ๋กœ ionic2๋ฅผ ์ •๋ง ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค. ๋‹จ์ง€ ๋ฐœ์‚ฌ ์†๋„๊ฐ€ ํฌ๊ฒŒ ํ–ฅ์ƒ๋˜๋Š” ๊ฒƒ์„ ๋ณด๊ณ  ์‹ถ์„ ๋ฟ์ž…๋‹ˆ๋‹ค. ionic2 ํŒ€์—๊ฒŒ ํ•„์š”ํ•œ ์‹œ๊ฐ„์„ ์ œ๊ณตํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์„ธ์š”...

๋˜ํ•œ ๋ถ€ํŒ… ์‹œ๊ฐ„์ด ์ฆ๊ฐ€ํ•˜๊ธฐ๋ฅผ ๊ธฐ๋Œ€ํ•ฉ๋‹ˆ๋‹ค.

Ionic ํŒ€์€ ์ง€๋‚œ ์ฃผ์— v1์˜ ionic-app-scripts ๋ฆด๋ฆฌ์Šค๋กœ ๋ฉ‹์ง„ ์ผ์„ ํ•ด๋ƒˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์ œ ํ™˜๊ฒฝ์—์„œ ํฌ๊ฒŒ ๊ฐœ์„ ๋œ ๋นŒ๋“œ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” ๊ทธ๋“ค์ด ์•ฑ ๋ถ€ํŒ… ์‹œ๊ฐ„์—๋„ ๋˜‘๊ฐ™์ด ํ•  ๊ฒƒ์ด๋ผ๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.

๋ฌธ์ œ๋Š” ๋‹ค๋ฅธ ๊ณณ์— ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ionic v2๋Š” rc ์ƒํƒœ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๊ฒƒ์ด ๋Œ€๋ถ€๋ถ„์˜ ๊ฐœ๋ฐœ์ž๊ฐ€ ์กด์ค‘ํ•ด์•ผ ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. Ionic ํŒ€ ์ธก์—์„œ ionic ๋ฌธ์„œ๋Š” v2๊ฐ€ ํ”„๋กœ๋•์…˜ ์ค€๋น„๊ฐ€ ๋œ ๊ฒƒ์œผ๋กœ ๋ชจ๋“  ์‹ ๊ทœ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ์ด์˜๋ฅผ ์ œ๊ธฐํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ๋ฌธ์„œ์กฐ์ฐจ๋„ ์ด์ œ v2๋กœ ๊ธฐ๋ณธ ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

์ž๋ฐœ์ ์ด๋“  ์•„๋‹ˆ๋“  ํŒ€์˜ ์ด๋Ÿฌํ•œ ๊ธฐ๋งŒ์ ์ธ ํ–‰๋™์€ ์ผ์ข…์˜ ์—…๊ณ„ ์••๋ ฅ์˜ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค. Ionics์˜ ์œ ์ผํ•œ ์ƒ์กด์€ ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ๋‹ค๋ฅธ ์ƒˆ๋กœ์šด ํฌ๋กœ์Šค ํ”Œ๋žซํผ ๊ธฐ์ˆ ๋กœ ์ „ํ™˜ํ•˜๊ธฐ ์ „์— ๋Œ€๊ทœ๋ชจ ๊ฐœ๋ฐœ ๊ธฐ๋ฐ˜(js+angular2)์„ ๊ฐ–์ถ˜ ๊ณ ๊ธ‰ ๋ฌด์–ธ๊ฐ€๋ฅผ ๋ฐฐ์น˜ํ•˜๋Š” ๋ฐ ๋‹ฌ๋ ค ์žˆ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ Ionic ํŒ€์€ v2๊ฐ€ Ionic์˜ ์‚ฌ์‹ค์ƒ ๋ฒ„์ „์ž„์„ ์ œ์•ˆํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด ๊ฒฝ์šฐ ๊ฐ€๊ฒฉํ‘œ๊ฐ€ ๋” ๋†’์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ ์ˆ˜์ •ํ•˜์ง€ ์•Š๊ณ  ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋Š” ์ค‘์š”ํ•œ ๋ถ€ํ’ˆ์ด ์žˆ๋Š” ์ œํ’ˆ์„ ์ถœ์‹œํ•˜๋ฉด ์ปค๋ฎค๋‹ˆํ‹ฐ๋กœ๋ถ€ํ„ฐ ๋ถˆ์‹ ์„ ์–ป๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ œํ’ˆ์„ ์ตœ์ฒจ๋‹จ์œผ๋กœ ํฌ์ง€์…”๋‹ํ•˜๊ธฐ ์ „์— ๋ช‡ ๋‹ฌ์„ ๋” ๊ธฐ๋‹ค๋ฆฌ๋Š” ๊ฒƒ๋ณด๋‹ค ๋•Œ๋กœ๋Š” ๋” ์œ„ํ—˜ํ•ฉ๋‹ˆ๋‹ค. ์„ฑ์ˆ™ํ•œ ์ฃผ์š” ์—…๊ทธ๋ ˆ์ด๋“œ.

๊ฐœ๋ฐœ์ž๋Š” ์ƒ์‚ฐํ•ด์•ผ ํ•˜๋ฉฐ ๊ฐ ๋‹จ๊ณ„์—์„œ ๋ฌผ๋Ÿฌ๋‚˜๊ฑฐ๋‚˜ ์ˆ˜์ • ์‚ฌํ•ญ์ด ์—†์œผ๋ฉด ์ž์‹ ์˜ ๋ฏธ๋ž˜์™€ ๊ณ ๊ฐ์— ๋Œ€ํ•œ ์•ˆ์ •์„ฑ์„ ํ—ค์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค๋ฅธ ์†”๋ฃจ์…˜์œผ๋กœ ๋ˆˆ์„ ๋Œ๋ฆฝ๋‹ˆ๋‹ค.

์ด์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? :)

@PrithiviRajG ๋‹ต๋ณ€ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. 10์ดˆ ์ด๋‚ด์— ์•ฑ์„ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ถ€ํŒ… ์‹œ๊ฐ„์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ionic2์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? ionic2์˜ ์ •์‹ ๋ฒ„์ „์„ ์ถœ์‹œํ•  ๊ณ„ํš์ด ์žˆ์„ ๋•Œ.

์„ค์น˜๋œ ํ˜„์žฌ ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ฐ ํ˜„์žฌ ์ด์˜จ ๋ฒ„์ „์œผ๋กœ 14.99์ดˆ ์ฝœ๋“œ ๋ถ€ํŒ…:

com-badrit-base64 0.2.0 "Base64"
com.synconset.imagepicker 2.1.7 "์ด๋ฏธ์ง€ ์„ ํƒ๊ธฐ"
cordova-plugin-camera 2.3.1 "์นด๋ฉ”๋ผ"
cordova-plugin-compat 1.1.0 "ํ˜ธํ™˜"
cordova-plugin-console 1.0.5 "์ฝ˜์†”"
cordova-plugin-device 1.1.4 "์žฅ์น˜"
cordova-plugin-dialogs 1.3.1 "์•Œ๋ฆผ"
cordova-plugin-nativestorage 2.2.0 "๋„ค์ดํ‹ฐ๋ธŒ ์Šคํ† ๋ฆฌ์ง€"
cordova-plugin-secure-storage 2.6.3 "SecureStorage"
cordova-plugin-spiner-dialog 1.3.1 "SpinnerDialog"
cordova-plugin-splashscreen 4.0.1 "์Šคํ”Œ๋ž˜์‹œ ํ™”๋ฉด"
cordova-plugin-statusbar 2.2.1 "์ƒํƒœ ํ‘œ์‹œ์ค„"
cordova-plugin-whitelist 1.3.1 "ํ™”์ดํŠธ๋ฆฌ์ŠคํŠธ"
ionic-plugin-keyboard 2.2.1 "ํ‚ค๋ณด๋“œ"

์‹œ์Šคํ…œ ์ •๋ณด:

์ฝ”๋ฅด๋„๋ฐ” CLI: 6.4.0
Ionic ํ”„๋ ˆ์ž„์›Œํฌ ๋ฒ„์ „: 2.0.0-rc.1
Ionic CLI ๋ฒ„์ „: 2.1.18
Ionic ์•ฑ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฒ„์ „: 2.1.9
Ionic ์•ฑ ์Šคํฌ๋ฆฝํŠธ ๋ฒ„์ „: 0.0.48
iOS ๋ฐฐํฌ ๋ฒ„์ „: 1.9.0
ios-sim ๋ฒ„์ „: ์„ค์น˜๋˜์ง€ ์•Š์Œ
OS: macOS ์‹œ์—๋ผ
๋…ธ๋“œ ๋ฒ„์ „: v6.9.2
Xcode ๋ฒ„์ „: Xcode 8.2.1 ๋นŒ๋“œ ๋ฒ„์ „ 8C1002

@tryadelion ํ˜„์žฌ ์ด์˜จ ๋ฒ„์ „์€ rc1์ด ์•„๋‹ˆ๋ผ rc4์ž…๋‹ˆ๋‹ค.

์—ฌ๋Ÿฌ๋ถ„, RC5๋‚˜ ์ถœ์‹œ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ์ž. ์ด๊ฒƒ๊ณผ ๊ด€๋ จํ•ด ๋งŽ์€ ๋ณ€ํ™”๊ฐ€ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

rc4์— ๋Œ€ํ•œ ์ด์˜จ ์—…๋ฐ์ดํŠธ๋ฅผ ์–ด๋–ป๊ฒŒ ๊ฐ•์ œํ•ฉ๋‹ˆ๊นŒ? ๋‚ด ์ง€์—ฐ์˜ ์›์ธ์ด ๋  ์ˆ˜ ์žˆ๋Š” ๋‹ค๋ฅธ ์˜ค๋ž˜๋œ ๊ฒƒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

์ €์—๊ฒŒ ionic v1์˜ ๋ณต์žกํ•œ ํ”„๋กœ์ ํŠธ๋Š” 1.8MB build.js์˜€์œผ๋ฉฐ v2์˜ ๊ฒฝ์šฐ ๊ธฐ๋ณธ ํ”„๋กœ์ ํŠธ์ธ main.js๊ฐ€ 6.7MB ์ด์ƒ ์ฆ๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
๋ถ€ํŒ… ์‹œ๊ฐ„์— ๋ถˆํ•„์š”ํ•˜๊ฒŒ ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š๋Š” Cordova ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„! ์ง€๊ธˆ์€ ์ด ๋ฌธ์ œ๋ฅผ ์ข…๋ฃŒํ•˜๊ณ  ์Šค๋ ˆ๋“œ๋ฅผ ์ž ๊ธ€ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ์‹œ์ ์—์„œ ์šฐ๋ฆฌ๋Š” ๋กœ๋“œ ์‹œ๊ฐ„, ํ”„๋ ˆ์ž„์›Œํฌ ์†๋„๋ฅผ ๊ฐœ์„ ํ•˜๊ณ  ๋ชจ๋“  ๊ณณ์—์„œ ์ž‘๋™ํ•˜๋„๋ก ํ•˜๊ธฐ ์œ„ํ•ด ๋งŽ์€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ํ•ญ์ƒ ์›€์ง์ด๋Š” ํ‘œ์ ์ด ๋  ๊ฒƒ์ด๋ฉฐ ์šฐ๋ฆฌ๊ฐ€ ๋Š์ž„์—†์ด ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋Š” ์ฒ˜์Œ์—๋Š” ๋„์›€์ด ๋˜์—ˆ์ง€๋งŒ ์ดํ›„ ํƒˆ์„ ํ•˜์—ฌ ๋” ์ด์ƒ ๋”ฐ๋ผ์•ผ ํ•  ๋ช…ํ™•ํ•œ ๋ฌธ์ œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ์š”์ฒญํ•œ ๋ชจ๋“  ์ •๋ณด์™€ ํ•จ๊ป˜ ์ƒˆ ๋ฌธ์ œ๋ฅผ ์—ฌ์‹ญ์‹œ์˜ค.

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