x
)- [x] bug report -> please search issues before submitting
- [ ] feature request
_ _ ____ _ ___
/ \ _ __ __ _ _ _| | __ _ _ __ / ___| | |_ _|
/ โณ \ | '_ \ / _` | | | | |/ _` | '__| | | | | | |
/ ___ \| | | | (_| | |_| | | (_| | | | |___| |___ | |
/_/ \_\_| |_|\__, |\__,_|_|\__,_|_| \____|_____|___|
|___/
@angular/cli: 1.2.3
node: 6.11.1
os: darwin x64
@angular/animations: 4.3.1
@angular/common: 4.3.1
@angular/compiler: 4.3.1
@angular/core: 4.3.1
@angular/forms: 4.3.1
@angular/http: 4.3.1
@angular/platform-browser: 4.3.1
@angular/platform-browser-dynamic: 4.3.1
@angular/router: 4.3.1
@angular/cli: 1.2.3
@angular/compiler-cli: 4.3.1
@angular/language-service: 4.3.1
$ ng new hello
$ cd hello
$ ng build --prod
$ ng build --prod
Hash: edf6fb3ccb1b82fa940c
Time: 10775ms
chunk {0} polyfills.71b130084c52939ca448.bundle.js (polyfills) 177 kB {4} [initial] [rendered]
chunk {1} main.e81f19d3f6b27a436c79.bundle.js (main) 1.09 kB {3} [initial] [rendered]
chunk {2} styles.d41d8cd98f00b204e980.bundle.css (styles) 69 bytes {4} [initial] [rendered]
chunk {3} vendor.f7457d5ac1e9743fd76f.bundle.js (vendor) 849 kB [initial] [rendered]
chunk {4} inline.18e445e37a0efd4dcfa2.bundle.js (inline) 0 bytes [entry] [rendered]
ERROR in ./src/main.ts
Module not found: Error: Can't resolve './$$_gendir/app/app.module.ngfactory' in 'hello/src'
@ ./src/main.ts 3:0-74
@ multi ./src/main.ts
ot ๋น๋ ์คํ
์๋ง๋ Enhanced-resolve 3.4.0์ด ์์ธ์ผ ์ ์์ต๋๋ค.
https://github.com/webpack/enhanced-resolve/issues/98
ng build --prod
๋ npm i [email protected]
์ดํ์ ์ฑ๊ณต์ ์ผ๋ก ์คํ๋ฉ๋๋ค.
๋๋ ๊ฐ์ ๋ฌธ์ ๋ฅผ ๋ฐ๊ฒฌํ๊ณ npm i [email protected]
ํ์ AOT๋ก ๋น๋ํ ์ ์์ต๋๋ค.
์ฌ๊ธฐ์๋ ๊ฐ์ ๋ฌธ์
@mchmielarski ์์ฃผ ์ข์ ์ถ์ธก์ด๋ค์ ๐
์ฌ๊ธฐ๋ ๋ง์ฐฌ๊ฐ์ง์
๋๋ค.
ํด๊ฒฐ ๋ฐฉ๋ฒ : npm install [email protected]
์๋ฃจ์
์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค. ์ด ๋ฌธ์ ๋ก ์ธํด ์์นจ ๋ด๋ด ๋น์ฉ์ด ๋ฐ์ํ์ต๋๋ค.
[email protected]
์ถ๊ฐํ๋ฉด ํด๊ฒฐ๋์์ต๋๋ค.
์ฌ๊ธฐ๋ ๋ง์ฐฌ๊ฐ์ง์
๋๋ค.
[email protected]
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ต๋๋ค.
์ฌ๊ธฐ๋ ๋ง์ฐฌ๊ฐ์ง!
[email protected]์ด ํด๊ฒฐํ์ต๋๋ค!
์ด ๋ฌธ์ ์ ๋ํด ์ ์๊ฒ ๊ฐ์ฌํฉ๋๋ค. ํ๋ฃจ ์ข ์ผ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ต๋๋ค.
" [email protected] "์ ์ฌ์ฉํ ํด๊ฒฐ ๋ฐฉ๋ฒ์ Mac OS์์๋ ์๋ํ์ง๋ง Linux์์๋ ์๋ํ์ง ์๋ ๊ฒ ๊ฐ์ต๋๋ค!? ๋๊ตฌ๋ ์ง ์ด ํ๋์ ํ์ธํ ์ ์์ต๋๊น?
๋๋ฅผ ์ํด ๋ฆฌ๋ ์ค ์ฐ๋ถํฌ 16.04์์ ์๋
๊ฐ์ ๋ฌธ์ ์ ๋๋ค.
์ฌ๋ฌ๋ถ, Angular-Cli์ ๋ํด ๊ณ ์ ์ข ์์ฑ ๋ฒ์ ์ ์ฌ์ฉํด์ผ ํฉ๋๋ค. ์ ๋ฒ์ ์ ํ์ ์ข ์์ฑ์๋ ์์์น ๋ชปํ ๊ฒ์ด ์๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ๊ฒ์ด ์ค๋จ๋๋ ๊ฒ์ ๋ฐฑ๋ง ๋ฒ์งธ์ ๋๋ค...
angular-cli ๋ฒ์ ์ ์ด๋ฏธ 1.3.1๋ก ์์ ๋์์ง๋ง ์ฌ์ ํ ์ด ์ค๋ฅ๊ฐ ์์ต๋๋ค.
์ ์๊ฒ๋ ๊ฐ์ ๋ฌธ์ ์
๋๋ค. Ubuntu Server์์ [email protected]
ํด๊ฒฐ๋์์ต๋๋ค.
์์นจ์ ์ฒ์ 2์๊ฐ์ RIPํฉ๋๋ค.
3.3.0์์๋ ์๋ํ์ต๋๋ค.
์ฌ์ ํ 3.4.1์์๋ AOT์ ์ค๋ฅ๊ฐ ์์ต๋๋ค. ๋ํ ๊ฐ๋ฐ ์ค์ environment.ts๋ ์ ์ ํ ํ๊ฒฝ ํ์ผ๋ก ๋ฎ์ด์ฐ์ฌ์ง์ง ์์ต๋๋ค.
์ด๊ฒ์ ๋ชจ๋ ๋น๋๋ฅผ ๊นจ๊ณ ์ค๋ ๋๋ผ์ด ์ฌ๋ฏธ๋ฅผ ๊ฐ์ก์ต๋๋ค! PLZ PLZ PLZ๋ ๊ณ ์ ์ข ์์ฑ์ผ๋ก ์ด๋ํฉ๋๋ค.
[email protected]
๋ฌธ์ ๊ฐ ์ฌ์ ํ ์กด์ฌํฉ๋๋ค. ๋์ผํ ๋ฌธ์ ๊ฐ ๋ํ๋ฉ๋๋ค.
์ง๊ธ์ 3.3.0 ์
์๋ก ์ค์น๋ angular/cli 1.2.0์ผ๋ก ์ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค ๋๋ ์คํจํฉ๋๋ค :(
์ ๋ ํจํค์ง ๊ด๋ฆฌ๋ฅผ ์ํด ์์ฌ๋ฅผ ์ฌ์ฉํ์ต๋๋ค.
๋์ผํ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. npm install [email protected]
์(๋) ์ผ์์ ์ผ๋ก ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ง๋ง ์ด๋ฏธ ์คํ ์ค์ธ ํ๋ก์ ํธ์ ์ถ๊ฐ๋ก ์ค์น๋ ๊ฒฝ์ฐ์๋ง ํด๋น๋ฉ๋๋ค. ์ ์ ํ ํตํด ๋ฐฐํฌ์ ํจ๊ป ์ค์น npm install
์ด ์ข
์ ์ธํธ package.json
์๋ํ์ง ์์ต๋๋ค.
์ด๊ฒ์ ์คํ ์ค์ธ ๋ฐฐํฌ ํ์ดํ๋ผ์ธ๊ณผ ์ ์ฒด ํ๋ก๋์ ์ค์ ์ ์ค๋จ์ํค๊ธฐ ๋๋ฌธ์ ์ฃผ์ ๋ฒ๊ทธ์ ๋๋ค.
Windows๋ฅผ ์ฌ์ฉ ์ค์ด๊ณ [email protected]
ํด๋ ์๋ํ์ง ์์ต๋๋ค.
@mscherer82 npm install
์คํํ์
จ๋์? ๊ทธ๋ ๋ค๋ฉด node_modules
์ญ์ ํ๊ณ ๋ค์ ์คํํ ์ ์์ต๋๋ค. ๊ทธ๊ฒ์ ๋๋ฅผ ์ํด ์ผํ์ต๋๋ค.
@angelnikolov ์, node_modules
์ญ์ ํ๊ณ ๋ชจ๋ ํจํค์ง๋ฅผ ๋ค์ ์ค์นํ์ต๋๋ค.
ํ , npm ls
์คํํด๋ณด๊ณ ์ด๊ฒ์ด enhanced-resolve
๋ฒ์ ์ธ์ง ํ์ธํด ์ฃผ์๊ฒ ์ต๋๊น?
+-- [email protected]
@pvanhemmen
npm ์ค์น ํ์ Enhanced-resolve๋ฅผ ์ค์นํด์ผ ํฉ๋๋ค. ์ผ์์ ์ธ ํด๊ฒฐ๋ก ๊ด์ฐฎ์ต๋๋ค.
@vicetjs ๊ทธ๊ฒ์ด ์ ๊ฐ ํ ์ผ์ด๋ฉฐ ์ ์๊ฒ๋ ํจ๊ณผ๊ฐ ์๋ ์ ์ผํ ๋ฐฉ๋ฒ์ ๋๋ค. ๋์์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค!
๋ด ๋น๋ ์๋ฒ๋ฅผ ํ๋ณตํ๊ฒ ๋ง๋ค๊ธฐ ์ํด angular/ngtools-webpack-builds๋ฅผ ๋ถ๊ธฐํ๊ณ enhanced-resolve
at 3.3.0
๊ณ ์ ํ ๋ค์ angular/cli-builds ๊ฐ ๋ด ngtools
๋ฅผ ๊ฐ๋ฆฌํค๋๋ก ๋ถ๊ธฐํ์ต๋๋ค package.json
๋ฅผ "@angular/cli": "github:benelliott/cli-builds#24a8837"
๋ก ๋ณ๊ฒฝํ์ฌ ์ฌ์ฉํด ๋ณผ ์ ์์ต๋๋ค(๊ทธ๋ฌ๋ ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ชจ๋ ํน์ ๋ฒ์ ์ด ์๋๋ผ ๋ง์คํฐ์ ์์).
@pvanhemmen [email protected]
์ค์น ํ npm shrinkwrap
๋ฅผ ์ฌ์ฉํ์ฌ ์๋ก ์ค์นํ์ฌ ๋ฐฐํฌํ ์ ์์์ต๋๋ค. ์ด๊ฒ์ ๋ด Jenkins ๋น๋ ํ์ดํ๋ผ์ธ์ด ๋ค์ ์ ์๋ํ๋๋ก ํ์ต๋๋ค.
์ด๊ฒ์ ๋ํ ์ ์คํธ๋ฆผ ์ข ์์ฑ ํ์์ด ๋ฏธ๋์ ๋ด ํ๋ก์ ํธ์ ํด๋ฅผ ๋ผ์น๋ ๊ฒ์ ๋ฐฉ์งํด์ผ ํฉ๋๋ค. :)
@bmcswee ๊ต์ฅํฉ๋๋ค, ํ
npm list
๊ฐ) ์ฃผ์์ต๋๋ค:
+-- @angular/[email protected]
| +-- @ngtools/[email protected]
| +-- @ngtools/[email protected]
| | +-- [email protected]
...
| +-- [email protected]
...
| | +-- [email protected] deduped
...
+-- [email protected]
Enhanced-resolve 3.3.0์ ์ค์นํ๋ฉด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค!
[email protected] ์ด ๋ด ํ๋ก์ ํธ์ ๋์์ด ๋์์ต๋๋ค. ๋๊ตฐ๊ฐ ์ด ํจํค์ง์ ๊ธฐ๋ฅ์ ์ค๋ช ํด ์ฃผ์๊ฒ ์ต๋๊น?
https://github.com/angular/angular-cli/issues/4551 ๋ช ๋ฌ ์ ํ๊ท.
@jakeNiemiec ์ด๊ฒ์ ๋์ค์ Angular ํ์ด ๋ฒ๊ทธ๋ฅผ ์์ ํ๋ ์์ ์ ํจํค์ง๋ฅผ ์ ๊ฑฐํด์ผ ํ๋ค๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. ๊ทธ๋ ์ฃ ?
๊ฑด๋ฐฐ!
์ฌ๋ฌ๋ถ, [email protected]
์ฐํ๊ฐ ๋ด ํ๋ก์ ํธ์์ ์๋ํ์ง ์์ต๋๋ค. ๋๋ ์ฌ์ ํ ๊ฐ์ ์ค๋ฅ๊ฐ ์์ต๋๋ค. ์ด ๋ฌธ์ ์ ๋ํ ์
๋ฐ์ดํธ๊ฐ ์์ต๋๊น?
@andreasonny83 ์ ํํ ์ด ๋ช ๋ น์ ์คํํ์ จ์ต๋๊น?
npm i [email protected]
Angular CLI์ Node๋ ์ ๋ฐ์ดํธํด์ผ ํฉ๋๋ค.
๋ช
ํํ ํ์๋ฉด (
โํ์ง ์์
(์ด๊ฒ์ ๋ฌด์ ๊ฒ์ธ๊ฐ npm@^5
๋ด์ ๋ฃ์ด package.json
๋ด๊ฐ ๋ฌ๋ฆด ๋ npm i [email protected]
) :
"enhanced-resolve": "^3.3.0"
,
โ
์๋ํฉ๋๋ค:
"enhanced-resolve": "3.3.0",
์๋ @Guston์ ์์ธํ ์ค๋ช ์ https://github.com/angular/angular-cli/issues/7113#issuecomment -317483817
jakeNiemiec ์๊ฒฌ๋ ์ ์๊ฒ ํจ๊ณผ์ ์ด์์ต๋๋ค. ์ด ์ฃผ์ ๋ณ๊ฒฝ ์ฌํญ์ ๋ํด ๊ณํ๋ ์์ ์ฌํญ์ด ์์ต๋๊น?
์๋ ํ์ธ์ ์ฌ๋ฌ๋ถ,
์ด๊ฒ์ webpack
์ ์ข
์์ฑ enhanced-resolve
์ ๋ฒ๊ทธ/์ค์ ๋ณ๊ฒฝ์ธ ๊ฒ ๊ฐ์ต๋๋ค. ์ด์ ๋ํด Webpack ์ ์ง ๊ด๋ฆฌ์์ ๋ํ๋ฅผ ์๋ํ ๊ฒ์
๋๋ค.
ํํธ package.json
"enhance-resolve": "3.3.0"
์ ๊ณ ์ ํฉ๋๋ค.
ํธ์ง: enhanced-resolve
๋ https://github.com/webpack/enhanced-resolve/issues/98์
๋๋ค.
@filipesilva @ngtools/webpack
์ ์ง์ ์ ์ธ ์ข
์์ฑ์ด๊ธฐ๋ ํฉ๋๋ค.
@benelliott ์ข์ ์ง์ .
@lsunkara AFAIK๋ ๋ชจ๋ ์ฌ๋์๊ฒ ๋ฐ๋์งํ์ง ์์ ์ ์๋ non-aot ๋น๋๋ฅผ ์์ฑํฉ๋๋ค.
@warmans ๊ฐ ๋ง์ต๋๋ค. --prod
ํ๋๊ทธ์ ํจ๊ณผ๋ https://github.com/angular/angular-cli/wiki/build# --dev-vs---prod-builds๋ฅผ ์ฐธ์กฐ
@bmcswee :+1: ์ ๋ ์ด์ ๋ชจ๋ ๊ฒ์ shrinkwrap --dev๋ฅผ ์ถ๊ฐํ๊ณ ์์ต๋๋ค. npm ํจํค์ง์ ์ด๋ฌํ ๋ชจ๋ ์ฃผ์ ๋ณ๊ฒฝ ์ฌํญ์ ์ง์ณ์ ์ข ๋ ํ๋ จ์ด ํ์ํฉ๋๋ค. ๊ทธ๋์ ๋ชจ๋์๊ฒ ์ข์ ํ์ ๋๋ค.
@warmans , ๋์ํฉ๋๋ค. ng build --env=prod๋ ๋ฐ๋์งํ์ง ์์ต๋๋ค. 3.3.0์ ๋ํ Enhanced-resolve์ ๋ํ ๊ณ ์ ๋ง ์๋ํฉ๋๋ค.
๊ฐ์ฌ ํด์.
enhance-resolve
๋ฆฌํฌ์งํ ๋ฆฌ์ ๊ด๋ จ ๋ฌธ์ :
3.3.0 ์ดํ ๋ณ๊ฒฝ ์ฌํญ .
๋๋ฅผ ์ํด์ด ์ค๋ฅ๋ฅผ ์์ ํ๋ ๊ฒ์ ์์ต๋๋ค.
์ด๋ฏธ ์ด ์ค๋ ๋์ ์์ฑ๋ ๋ชจ๋ ๊ฒ์ ์๋ํ์ต๋๋ค.
๋ค๋ฅธ ์ฌ๋์ด ํ ๊ฒฝ์ฐ ์๋ ค์ฃผ์ธ์!
@renatop7 ์ฌ๊ธฐ์ ์๋ ํด๊ฒฐ ๋ฐฉ๋ฒ ์ ์ ์ค ์ผ๋ถ๋ ์ค์ ๋ก package.json
์ ์ ํ ๋ฒ์ ์ ์ ์ฅํ์ง ์์ ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
enhanced-resolve
์์ ๋น์ ์ package.json
(์ด๋ฏธ ๋ค๋ฅธ ํด๊ฒฐ์ฑ
์ ์ผ๋ถ๊ฐ์๋ ๊ฒฝ์ฐ)npm i -DE [email protected]
( -DE
๋ npm4์ npm5 ์ฌ์ด์์ ์ผ๊ด๋๊ฒ ์๋ํด์ผ ํจ)node_modules
ํด๋๋ฅผ ์ญ์ ํ์ฌ ์๋ก ์ค์นํด๋ ์๋ํ๋์ง ํ์ธํฉ๋๋ค.npm install
, ํ๋ก๋์
๋น๋ ์คํํธ์ง: ๋ํ npm5
์ฌ์ฉํ๋ ๊ฒฝ์ฐ package-lock.json
์ฌ์์ฑํ๋ ค๊ณ ํฉ๋๋ค(4๋จ๊ณ ์ ์ ์ญ์ ). ์ด๊ฒ์ด ๋๋ฌด ๋ง์ ์ฌ๋๋ค์๊ฒ ์ ์ฉ๋์ง ์๋๋ค๊ณ ์๊ฐํฉ๋๋ค. ์ ๊ธ ํ์ผ์ด ์๋ ๊ฒฝ์ฐ ๋น๋๊ฐ ์ค๋จ๋์ง๋ ์์์ ๊ฒ์
๋๋ค.
@Guston ์ ์์ฃผ ์ข์ ๋จ๊ณ๋ณ ๊ฐ์ด๋์ ๋๋ค. ๊ฐ์ฌํฉ๋๋ค!
@gustorn ๋ํ ์ฌ๋ฐ๋ฅธ ๋ฒ์ ์ ์ป์ผ๋ ค๋ฉด npm ์บ์๋ฅผ ์ง์์ผ ํ์ต๋๋ค.
@warmans -E
ํ๋๊ทธ๋ฅผ ํต๊ณผํ์ต๋๊น? ๊ณ ๊ถ ๋ฐ๋ฌผ์ ์บ์์์ด ํจํค์ง์ ํน์ ๋ฒ์ ์ ์๊ตฌํด์๋ ์ ๊ฒฝ์ฐ (๋๋ ์ป์ ์์ผ๋ฉด ๊ทธ๊ฒ์ ์๋ชป๋ ๋๋ NPM์ ๋ฒ๊ทธ ์ฃผ์ฅ ํ ๊ฒ).
@HirenParekh @ngtools/webpack
๊ฐ enhanced-resolve
์ ๋ฒ์ ์ ์ ๊ทธ์ง ์๊ธฐ ๋๋ฌธ์
๋๋ค. 1.1.1 ๋ฆด๋ฆฌ์ค ์ package.json
ํ์ผ์ ๋ณด๋ฉด ๋ฒ์ ์ด ^3.1.0
์์ ์ ์ ์์ต๋๋ค. npm์ ์๋ก ์ค์นํ ๋ ํจํค์ง์ ์ต์ semver ํธํ ๋ฒ์ ์ ์ค์นํฉ๋๋ค. ์ด ๊ฒฝ์ฐ์๋ 3.4.0
๋ฒ์ ์
๋๋ค.
ํธ์ง: ๋ถ๋ช ํ ๋ด๊ฐ ๋ต์ฅํ ๋ ๋ฒ์งธ ๋๊ธ์ด ์ญ์ ๋์์ต๋๋ค. ์ค๋ช ์ด ๋๊ตฐ๊ฐ์๊ฒ ์ ์ฉํ ์ ์์ผ๋ฏ๋ก ์ง๋ฌธ์ ๊ธฐ๋ณธ์ ์ผ๋ก ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
@angular/[email protected]
๋ค์ด๊ทธ๋ ์ด๋ํด๋ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์ง ์๋ ์ด์ ๋ ๋ฌด์์ ๋๊น?
@filipesilva @yyx990803์ด ์ง์ ํ vue-cli
AoT ๋ฌธ์ ์ ๊ด๋ จ์ด ์์ ์ ์์ต๋๊น?
https://github.com/webpack/enhanced-resolve/commit/03ef8f2b8d25bc976993eade7b1ed9caa2c7d0e1#commitcomment -23261583
ํธ์ง: ๋ถ๋ช ํ ํ๊ธฐ ์ํด https://github.com/webpack/enhanced-resolve/pull/100์ ๋ํ ์์ ์ฌํญ์ ์ด ๋ฌธ์ ๋ฅผ ์์ ํ์ง ์์ต๋๋ค.
npm i
npm i [email protected]
1.npm ํด๋ฆฐ ์บ์
๋๋ฅผ ์ํด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ต๋๋ค.
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด 1.2.4
/ 1.3.0-rc.1
์ ์ถ์ํ์ต๋๋ค. ์
๋ฐ์ดํธํ๋ฉด ๋ค๋ฅธ ์กฐ์น๊ฐ ํ์ ์์ด ์ด ๋ฌธ์ ๊ฐ ์์ ํ ๋ฐฉ์ง๋ฉ๋๋ค.
๋น ๋ฅธ ์๋ต๊ณผ ๋ฌธ์ ์ ๋ํ ์ ๋กํ์ ๋ํด @sokra ์๊ฒ ํฐ ๊ฐ์ฌ๋ฅผ ๋๋ฆฝ๋๋ค.
angular-cli์ ์ต์ 1.2.4๋ก ์ ๋ฐ์ดํธ๋ ^1.0.0์ผ๋ก ํ๋ก์ ํธ๋ฅผ ๋น๋ํ๋ ค๊ณ ์๋ํ๋๋ฐ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
๋น ๋ฅธ ์ฒ๋ฆฌ์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.
osx์์ ๋ฒ์ 1.2.4๋ฅผ ์ฌ์ฉํ๋ @filipesilva , ์์ฌ์ ํจ๊ป ์ค์น๋ ์์ ์ด ์๋ํ์ง ์์
๋ฒ์ 1.3.0-rc.1์์๋ ๋ค์์ ๋ณผ ์ ์์ต๋๋ค.
ERROR in ./src/main.ts
Module not found: Error: Can't resolve './$$_gendir/app/app.module.ngfactory' in '/Users/john/Workspace/tcabs2/ui/src'
resolve './$$_gendir/app/app.module.ngfactory' in '/Users/john/Workspace/tcabs2/ui/src'
using description file: /Users/john/Workspace/tcabs2/ui/package.json (relative path: ./src)
Field 'browser' doesn't contain a valid alias configuration
after using description file: /Users/john/Workspace/tcabs2/ui/package.json (relative path: ./src)
using description file: /Users/john/Workspace/tcabs2/ui/package.json (relative path: ./src/$$_gendir/app/app.module.ngfactory)
no extension
Field 'browser' doesn't contain a valid alias configuration
/Users/john/Workspace/tcabs2/ui/src/$$_gendir/app/app.module.ngfactory doesn't exist
.ts
Field 'browser' doesn't contain a valid alias configuration
/Users/john/Workspace/tcabs2/ui/src/$$_gendir/app/app.module.ngfactory.ts doesn't exist
.js
Field 'browser' doesn't contain a valid alias configuration
/Users/john/Workspace/tcabs2/ui/src/$$_gendir/app/app.module.ngfactory.js doesn't exist
as directory
/Users/john/Workspace/tcabs2/ui/src/$$_gendir/app/app.module.ngfactory doesn't exist
[/Users/john/Workspace/tcabs2/ui/src/$$_gendir/app/app.module.ngfactory]
[/Users/john/Workspace/tcabs2/ui/src/$$_gendir/app/app.module.ngfactory.ts]
[/Users/john/Workspace/tcabs2/ui/src/$$_gendir/app/app.module.ngfactory.js]
[/Users/john/Workspace/tcabs2/ui/src/$$_gendir/app/app.module.ngfactory]
@ ./src/main.ts 3:0-74
@ multi ./src/main.ts
๋ฒ์ 1.2.4๋ ์์ฌ ์ค์น๊ฐ ์๋ npm ์ค์น์์ ์๋ํฉ๋๋ค.
@mildfuzz ์ ๊ฑฐํ๋ ค๊ณ ๋น์ ์ yarn.lock
, ์๋ง ์ ์งํ๋ ๊ฒ [email protected]
์ฃผ์. ๋ค์ yarn
์์ ๋ค์ ๋น๋๋ฉ๋๋ค.
๋คํธ ์์, CI ์๋ฒ๊ฐ ์๋ํ๋์ง ํ์ธํ๊ธฐ ์ํด ๋น๋ ์ฌ์ด์ yarn.lock ๋ฐ node_modules๋ฅผ ์ ๊ฑฐํ์ต๋๋ค.
rm -rf yarn.lock && rm -rf node_modules && yarn install && ng build -prod
์ด(๊ฐ) ์๋ํ์ง ์์ต๋๋ค.
rm -rf yarn.lock && rm -rf node_modules && npm i && ng build -prod
์๋ํฉ๋๋ค(npm 5.3.0 ์ฌ์ฉ)
์ฌ๊ธฐ์ ๊ฐ์ : ๋ฌธ์ ๊ฐ ์กด์ฌ rc.0
์ ์กด์ฌํ๋ ๊ฒ์ผ๋ก ๋ณด์ธ๋ค rc.1
๋.
node_modules, yarn.lock + yarn cache clean
์ ๊ฑฐํ ๋ค์ ์ฒ์๋ถํฐ ๋ชจ๋ ๊ฒ์ ๋ค์ ์ค์น - ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์ง ์์ ;/
์ถ์ : ์ค๋ฅ ๋ฉ์์ง์ ์ฐจ์ด๊ฐ ์์ต๋๋ค. ๋ด์ฉ์ ๋์ผํ์ง๋ง rc.0์์๋ ๋ค์ฌ์ฐ๊ธฐ ์์ด ์ธ์๋์์ต๋๋ค. ์ด์ @mildfuzz๋ก ๋ถ์ฌ๋ฃ์ ๊ฒ์ฒ๋ผ ์ข์ ๋ค์ฌ์ฐ๊ธฐ๊ฐ ์์ต๋๋ค ;-)
์์ฌ ์ค์น๋ ์๋ํ์ต๋๋ค. ์ฌ๋ฐ๋ฅธ ๋ฒ์ 3.3.0์ ์ค์นํ๋ ๊ฒ ๊ฐ์ง๋ง ng build --prod
๊ฐ ์คํจํฉ๋๋ค.
์ฐ๋ฆฌ ํ๋ก์ ํธ์์ ์์ฌ๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ํธ๊ธฐ์ฌ์์ ์๋ํ์ต๋๋ค.
๋ฐฉ๊ธ ์๋
npm install -g @angular/cli
ng -v
-returns version 1.2.4
npm new aottest
cd aottest
ng build --prod
์คํจ ์์ด ์๋
์์ฌ ๋๋ ์์ฌ ๊ตฌ์ฑ์ ์ฌ์ฉํ์ง ์๊ณ npm๋ง ์ฌ์ฉ
@mildfuzz @ryzy yarn list enhanced-resolve
๋) ๋ฌด์์ ๋ณด์ฌ์ค๋๊น? ๋ํ yarn why enhanced-resolve
.
@ํ๋ฆฌํ์ค๋ฐ
์์ฌ ๋ชฉ๋ก v0.27.5
โโ [email protected]
1.26์ด ์์ ์๋ฃ๋ฉ๋๋ค.
๋ง์์, ๊ฑฐ๊ธฐ์ ๋ญ๊ฐ ๋ฌธ์ ๊ฐ ์๋ ๊ฒ ๋ถ๋ช
ํด์. ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ 3.3.0
๊ณ ์ ํ๊ณ ์์ผ๋ฏ๋ก yarn์ 3.4.1
์ค์นํ์ง ์์์ผ ํฉ๋๋ค. yarn why enhanced-resolve
๋ฅผ ์คํํ์ฌ ์ ํด๊ฒฐ๋๋์ง ํ์ธํ ์ ์์ต๋๊น?
[1/4] "enhanced-resolve" ๋ชจ๋์ด ์๋ ์ด์ ๋...?
[2/4] ์ข ์์ฑ ๊ทธ๋ํ ์ด๊ธฐํ ์ค...
[3/4] ์์กด์ฑ์ ์ฐพ๋ ์ค...
[4/4] ํ์ผ ํฌ๊ธฐ ๊ณ์ฐ ์ค...
์ ๋ณด ์ด ๋ชจ๋์ด ์กด์ฌํ๋ ์ด์
- "@angular/cli#@ngtools/webpack"์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค.
- "@angular/cli#webpack"์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค.
info ์ข ์์ฑ์ด ์๋ ๋์คํฌ ํฌ๊ธฐ: "196kB"
์ ๋ณด ๊ณ ์ ์ข ์์ฑ์ด ์๋ ๋์คํฌ ํฌ๊ธฐ: "328kB"
์ ๋ณด ์ ์ด ์ข ์์ฑ์ด ์๋ ๋์คํฌ ํฌ๊ธฐ: "820kB"
info ๊ณต์ ์ข ์์ฑ ์: 12
1.61์ด ์์ ์๋ฃ๋ฉ๋๋ค.
yarn why enhanced-resolve
์ด ๋ชจ๋์ด ์กด์ฌํ๋ ์ด์
์ฐ๋ฆฌ์ ๋
"@angular/cli": "1.3.0-rc.0",
"@angular/compiler-cli": "4.1.3",
"@angular/animations": "4.1.3",
"@angular/common": "4.1.3",
"@angular/compiler": "4.1.3",
"@angular/core": "4.1.3",
"@angular/forms": "4.1.3",
"@angular/http": "4.1.3",
"@angular/platform-browser": "4.1.3",
"@angular/platform-browser-dynamic": "4.1.3",
"@angular/platform-server": "4.1.3",
"@angular/router": "4.1.3",
"rxjs": "5.4.2",
"zone.js": "0.8.14"
@thegitty @angular/cli
์ด๋๊ฐ์ ๋งํฌ๋ ๊ฒ ๊ฐ์๋ฐ ... @angular/cli
๋ enhanced-resolve
์ง์ ์์กดํ์ง ์์ต๋๋ค.
@coryrylan ํ , ๊ฑฐ๊ธฐ์ CLI ๋๋ ngtools/webpack
๊ฐ ๋ณด์ด์ง ์์ต๋๋ค.
์์ฌ ์ ๊ธ ์ฅ์น๊ฐ ์์ต๋๋ค
ngtools/ [email protected]
๊ฐ /[email protected]
version 3.4.1
This module exists because "@angular/cli#@ngtools/webpack" depends on it.
์ดํด.
๋น๋๊ฐ 2์ฃผ ๋ง์ 2๋ฒ์งธ๋ก ์ค๋จ๋์์ต๋๋ค.
npm install [email protected]์ ์ถ๊ฐํ๋ฉด ๋ฌธ์ ๊ฐ ํด๊ฒฐ
๋ค์์ ์นํฉ์ ์ ๊ทธ๋ ์ด๋ํ ์ปค๋ฐ์ ๋๋ค.
https://github.com/webpack/webpack/commit/16bf0b6f26b23df682433ddefcbff5278a6fac2c
๋ ๋น์ ์ ๋ํ ํญ๋ชฉ์ ์ถ๊ฐ ํ ํ์๊ฐ ํน์ ๋ฒ์ ์ ์ฌ์ฉํ๋ ํ์ ์ค์ ์๊ฐ resolutions
๋น์ ์ package.json
@coryrylan ์์ ์ ์ํด @angular/[email protected]
ํ์ํ์ง๋ง 1.3.0-rc.0
์์ต๋๋ค.
@mildfuzz ์ปค๋ฐ์ด ์กด์ฌํ์ง๋ง ์์ง ๋ฆด๋ฆฌ์ค๋์ง ์์์ต๋๋ค. ๋ง์ง๋ง webpack ๋ฆด๋ฆฌ์ค๋ 9์ผ ์ ์ด์ง๋ง ํด๋น ์ปค๋ฐ์ 13์๊ฐ ์ ์ด์์ต๋๋ค.
package.json
๋ณต์ฌํ์ฌ ๋ถ์ฌ๋ฃ๊ณ ์์ฌ๋ฅผ ์ํํ๋๋ฐ ์ ๋๋ก ์ค์น๋๋ ๊ฒ ๊ฐ์ต๋๋ค.
kamik<strong i="13">@T460p</strong> MINGW64 D:/sandbox/tmp
$ yarn && yarn list enhanced-resolve && yarn why enhanced-resolve
yarn install v0.24.6
info No lockfile found.
[1/4] Resolving packages...
[2/4] Fetching packages...
warning [email protected]: The platform "win32" is incompatible with this module.
info "[email protected]" is an optional dependency and failed compatibility check. Excluding it from installation.
[3/4] Linking dependencies...
warning "[email protected]" has unmet peer dependency "@ngrx/store@^2.2.1".
warning "@ngrx/[email protected]" has unmet peer dependency "@ngrx/store@^2.0.0".
[4/4] Building fresh packages...
success Saved lockfile.
Done in 66.95s.
yarn list v0.24.6
โโ [email protected]
Done in 0.87s.
yarn why v0.24.6
[1/4] Why do we have the module "enhanced-resolve"...?
[2/4] Initialising dependency graph...
[3/4] Finding dependency...
[4/4] Calculating file sizes...
info Reasons this module exists
- "@angular/cli#@ngtools/webpack" depends on it
- "@angular/cli#webpack" depends on it
Done in 0.89s.
์์ฌ์์ ๋ฒ๊ทธ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. ๋ฒ์ ์ ํด๊ฒฐํ๋ ๋ฐ ๋ฌธ์ ๊ฐ ์๋ ๊ฒ์ ์ด๋ฒ์ด ์ฒ์์ด ์๋๋๋ค. ๋๋ v0.24.6
ํ๊ณ ์์๋ค.
@filipesilva ์ ๊ฐ์ฌํฉ๋๋ค! ๋๋ ๊ทธ๊ฒ์ ์๋ํ ๊ฒ์ด๋ค. ๋๋ ๊ทธ๊ฒ์ ์์์ฐจ๋ ธ์ด์ผ ํ๋ค
@filipesilva ์ปค๋ฐ์ semver ๋ณ๊ฒฝ ์์ด ๋ง์คํฐ์ ๋ฐ๋ก ์ ์ฉ๋ฉ๋๋ค.
์, ํ์ง๋ง ๋ง์คํฐ๋ฅผ ์ฌ์ฉํ์ง ์๊ณ [email protected]
์์ต๋๋ค. ๋ง์คํฐ๋ฅผ ์ป๋ ์ ์ผํ ๋ฐฉ๋ฒ์ github์์ ์ง์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ์ด๋ฉฐ package.json์ ๋ฐ๋ผ ๊ทธ๋ ์ง ์์ต๋๋ค.
์ข์ ์ง์ . ํ , ๊ถ๊ธํ๋ค
yarn + [email protected]
๋ฅผ ์ฌ์ฉํ๋ ํด๊ฒฐ ๋ฐฉ๋ฒ์ด ์์ต๋๊น?
@cebor ์ ๋ ๊ฐ์ ์ํฉ์ด์ง๋ง ์์ง ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ฐพ์ง ๋ชปํ์ต๋๋ค.
๋ด Linux ํ๊ฒฝ์์ ์ด๊ฒ์ด ์คํจํ๋ ๊ฒ์ ์ฌ์ ํ ๋ณด๊ณ ์์ต๋๋ค.
$ng -v
@angular/cli: 1.2.4
๋
ธ๋: 6.11.1
์ด์์ฒด์ : ๋ฆฌ๋
์ค x64
@๊ฐ๋/๊ณตํต: 4.3.1
@๊ฐ๋/์ปดํ์ผ๋ฌ: 4.3.1
@๊ฐ๋/์ฝ์ด: 4.3.1
@angular/forms: 4.3.1
@angular/http: 4.3.1
@๊ฐ๋/ํ๋ซํผ ๋ธ๋ผ์ฐ์ : 4.3.1
@angular/platform-browser-dynamic: 4.3.1
@๊ฐ๋/๋ผ์ฐํฐ: 4.3.1
@angular/cli: 1.2.4
@angular/compiler-cli: 4.3.1
[root@4bc7c5f8560c]# ์์ฌ ๋ชฉ๋ก ๊ฐํ ํด๊ฒฐ
์์ฌ ๋ชฉ๋ก v0.27.5
โโ [email protected]
โโ ์นํฉ @
โโ [email protected]
0.62์ด ์์ ์๋ฃ๋ฉ๋๋ค.
OS X ๋ฐ Linux์๋ @angular/cli && ํฅ์ ํด๊ฒฐ์ ๋ํ ๋ฒ์ ์ผ์น๊ฐ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๋ด ์ํ์ธ ๋์ปค ์ปจํ ์ด๋์์ ์คํํ๋ฉด ๋ค์์ ์ป์ต๋๋ค.
./src/main.ts์ ์ค๋ฅ
๋ชจ๋์ ์ฐพ์ ์ ์์: ์ค๋ฅ: '/godata/pipelines/XXX/src'์ './$$_gendir/app/app.module.ngfactory'๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
@ ./src/main.ts 4:0-74
@ multi ./src/main.ts
OS X ๋ฒ์ ์ ๋ฌธ์ ์์ด ๋น๋๋ฉ๋๋ค.
๋ค๋ฅธ ๋ฌธ์ ๊ฐ ์์ ์ ์์ต๋๋ค. ์๋ง๋ ๊ด๋ จ ๋ฌธ์ ์ผ ์ ์์ต๋๋ค. ์ด ์ค๋ ๋๋ฅผ ๊ธฐ๋ฐ์ผ๋ก @angular/ cli @
--prod ํ๋๊ทธ ์์ด AOT ๋น๋๋ฅผ ์ํํ๋ฉด ๋ชจ๋ ๊ฒ์ด ์ ์์
๋๋ค. ์นํฉ ๋ก๋ฉ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค. ์บ์ ๋ฒ์คํธ๋๊ฑฐ๋ ์ถ์๋ ๊ฒ์ ์์ต๋๋ค(์์๋๋ก).
$ ng build -aot -bh /app/ -d /app/
12% building modules 24/26 modules 2 active ...dh/code/skyl-sam/gui/src/polyfills.tsThe final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string
Hash: dccdd84edb379b90050e
Time: 18188ms
chunk {0} common.bundle.js, common.bundle.js.map (common) 225 kB {8} [initial] [rendered]
chunk {1} 1.chunk.js, 1.chunk.js.map 158 kB {2} {4} [rendered]
chunk {2} 2.chunk.js, 2.chunk.js.map 22.8 kB {1} {4} [rendered]
chunk {3} polyfills.bundle.js, polyfills.bundle.js.map (polyfills) 305 kB {8} [initial] [rendered]
chunk {4} main.bundle.js, main.bundle.js.map (main) 206 kB {7} [initial] [rendered]
chunk {5} styles.bundle.js, styles.bundle.js.map (styles) 12.8 kB {8} [initial] [rendered]
chunk {6} scripts.bundle.js, scripts.bundle.js.map (scripts) 935 bytes {8} [initial] [rendered]
chunk {7} vendor.bundle.js, vendor.bundle.js.map (vendor) 2.39 MB [initial] [rendered]
๊ทธ๋ฌ๋ ๋ธ๋ผ์ฐ์ ์ --prod ์ค๋ฅ๊ฐ ์๋ AOT ๋น๋ ๊ฐ ํ์๋ฉ๋๋ค. ์ฒญํฌ๋ฅผ ์ฐพ์ ์ ์๋ค๊ณ ๋์ต๋๋ค.
$ ng build -aot -bh /app/ -d /app/ --prod
12% building modules 20/22 modules 2 active ...dh/code/skyl-sam/gui/src/polyfills.tsThe final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string
Hash: 087aa24978df80ff0791
Time: 31614ms
chunk {0} common.c748e79cd1f1548103ca.bundle.css (common) 64.2 kB {8} [initial] [rendered]
chunk {1} 1.25adab460fca740132f8.chunk.js 156 kB {2} {4} [rendered]
chunk {2} 2.d8720a9ef943f0c023dd.chunk.js 22.8 kB {1} {4} [rendered]
chunk {3} polyfills.ff68bf59b00f20dd55fa.bundle.js (polyfills) 305 kB {8} [initial] [rendered]
chunk {4} main.84addcca1f874b2e3beb.bundle.js (main) 204 kB {7} [initial] [rendered]
chunk {5} scripts.8e25fcd212b7caba6537.bundle.js (scripts) 935 bytes {8} [initial] [rendered]
chunk {6} styles.5d90f8fb1f36b9f8617d.bundle.css (styles) 69 bytes {8} [initial] [rendered]
chunk {7} vendor.32a6e9e7149831c7fbfc.bundle.js (vendor) 2.39 MB [initial] [rendered]
chunk {8} inline.1170c1e8a9ba9c0dfcf5.bundle.js (inline) 0 bytes [entry] [rendered]
๋ธ๋ผ์ฐ์ ์ ์ค๋ฅ
ERROR Error: Uncaught (in promise): Error: Loading chunk 0 failed.
Error: Loading chunk 0 failed.
at HTMLScriptElement.n (inline.1170c1eโฆ.bundle.js:1)
at HTMLScriptElement.o (polyfills.ff68bf5โฆ.bundle.js:1)
at t.invokeTask (polyfills.ff68bf5โฆ.bundle.js:1)
at Object.onInvokeTask (vendor.32a6e9eโฆ.bundle.js:1)
at t.invokeTask (polyfills.ff68bf5โฆ.bundle.js:1)
at r.runTask (polyfills.ff68bf5โฆ.bundle.js:1)
at e.invokeTask [as invoke] (polyfills.ff68bf5โฆ.bundle.js:1)
at h (polyfills.ff68bf5โฆ.bundle.js:1)
at HTMLScriptElement.d (polyfills.ff68bf5โฆ.bundle.js:1)
at HTMLScriptElement.n (inline.1170c1eโฆ.bundle.js:1)
at HTMLScriptElement.o (polyfills.ff68bf5โฆ.bundle.js:1)
at t.invokeTask (polyfills.ff68bf5โฆ.bundle.js:1)
at Object.onInvokeTask (vendor.32a6e9eโฆ.bundle.js:1)
at t.invokeTask (polyfills.ff68bf5โฆ.bundle.js:1)
at r.runTask (polyfills.ff68bf5โฆ.bundle.js:1)
at e.invokeTask [as invoke] (polyfills.ff68bf5โฆ.bundle.js:1)
at h (polyfills.ff68bf5โฆ.bundle.js:1)
at HTMLScriptElement.d (polyfills.ff68bf5โฆ.bundle.js:1)
at a (polyfills.ff68bf5โฆ.bundle.js:1)
at a (polyfills.ff68bf5โฆ.bundle.js:1)
at polyfills.ff68bf5โฆ.bundle.js:1
at t.invokeTask (polyfills.ff68bf5โฆ.bundle.js:1)
at Object.onInvokeTask (vendor.32a6e9eโฆ.bundle.js:1)
at t.invokeTask (polyfills.ff68bf5โฆ.bundle.js:1)
at r.runTask (polyfills.ff68bf5โฆ.bundle.js:1)
at o (polyfills.ff68bf5โฆ.bundle.js:1)
at e.invokeTask [as invoke] (polyfills.ff68bf5โฆ.bundle.js:1)
at h (polyfills.ff68bf5โฆ.bundle.js:1)
_ @ vendor.32a6e9eโฆ.bundle.js:1
๋ฐ๋ผ์ "0.84a03cc88aee47079f58.chunk.js" ์ฒญํฌ๊ฐ ์์ฑ๋ ๊ฒ์ผ๋ก ์์ํ์ง๋ง ๊ทธ๋ ์ง ์์์ต๋๋ค. ๋๊ตฌ๋ ์ง ์ด๋ฐ ๊ฒ์ ๋ณธ ์ ์ด ์์ต๋๊น? ๋์์ ์ฃผ์๋ฉด ์ ๋ง ๊ฐ์ฌํ๊ฒ ์ต๋๋ค. ๊ฐ์ฌ ํด์!
๊ทธ ๋ฌธ์ ๋ ์ ๋ง ์ง์ฆ๋๊ณ ๋ช ์๊ฐ์ด ๊ฑธ๋ ธ์ต๋๋ค. ๊ทธ๋ฌ๋ npm install [email protected]
๋ Windows์์ ์ ์๋ํ์ผ๋ฉฐ ๋ ์ด์ ์ญ์ ํ๊ฑฐ๋ ์ ๋ฆฌํ ํ์๊ฐ ์์ต๋๋ค.
์ ์ฉํ ํํธ ๊ฐ์ฌํฉ๋๋ค!
@angular/cli ~1.2.0์ผ๋ก package.json์ ์ ๋ฐ์ดํธํ ์ ์์ต๋๋ค. ์ต์ 1.2.4๋ก ์ ๋ฐ์ดํธ๋๋ฉฐ ํดํนํ ํ์๊ฐ ์์ต๋๋ค.
@filipesilva ๊ทธ๋์ ๋๋ ์ฌ์ฉํ๊ณ ์์ง ์๋ค [email protected]์
yarn list webpack
์๋ [email protected]
๊ฐ ์๋ "enhanced-resolve": "^3.0.0",
๊ฐ ํ์๋๋ฏ๋ก ์คํ ์ 3.4.1๋ก ์
๋ฐ์ดํธ๋ฉ๋๋ค.
[email protected] ์์๋ ๊ณ ์ ๋์ง ์๊ณ "enhanced-resolve": "^3.3.0",
@ํ๋ฆฌํ์ค๋ฐ
$ yarn list enhanced-resolve
yarn list v0.27.5
โโ @ngtools/[email protected]
โ โโ [email protected]
โโ [email protected]
Done in 0.83s.
$ yarn why enhanced-resolve
yarn why v0.27.5
[1/4] Why do we have the module "enhanced-resolve"...?
[2/4] Initialising dependency graph...
[3/4] Finding dependency...
[4/4] Calculating file sizes...
info This module exists because "webpack" depends on it.
info Disk size without dependencies: "196kB"
info Disk size with unique dependencies: "328kB"
info Disk size with transitive dependencies: "848kB"
info Number of shared dependencies: 10
Done in 0.84s.
$ yarn list webpack
yarn list v0.27.5
โโ [email protected]
Done in 0.83s.
์ฌ๊ธฐ ๋ด ์ ์ฒด package.json: https://gist.github.com/ryzy/aa422bc587c6858207caa55aa66c82db
์์ฌ ์ฌ์ฉ์๋ฅผ ์ํ ์์ ํ๋ก๊ทธ๋จ์ด ์์ต๋๊น? ์ฌ์ ํ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค. Enhanced-resolve๊ฐ ์์ ์ฌํญ์ ๋ฆด๋ฆฌ์คํ ๊ฒ์ผ๋ก ๋ณด์ด๊ธฐ ๋๋ฌธ์ @angular/cli": "1.2.4
์์ @angular/cli": "1.2.3
๋ก ๋ค์ด๊ทธ๋ ์ด๋๋ฅผ ์๋ํ์ต๋๋ค. https://github.com/webpack/enhanced-resolve/releases/tag/v3. 4.1
ํ์ง๋ง ์ฌ์ ํ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค. ์ํ ๋ฅด ๋ฒ์ ์ผ๋ก.
yarn list enhanced-resolve
yarn list v0.27.5
โโ [email protected]
Done in 1.26s.
yarn why enhanced-resolve
yarn why v0.27.5
[1/4] Why do we have the module "enhanced-resolve"...?
[2/4] Initialising dependency graph...
[3/4] Finding dependency...
[4/4] Calculating file sizes...
info This module exists because "@angular/cli#@ngtools/webpack" depends on it.
Done in 2.81s.
@BorntraegerMarc๋ enhanced-resolve
๋ฅผ package.json์ 3.3.0์ผ๋ก ๊ณ ์ ์ถ๊ฐํ์ฌ ์์ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ต๋๋ค.
@sickelap ์ ๋ ์์ฌ์ ํ๋ฉด ์ํคํ
์ฒ๋ฅผ ์ฌ์ฉํ์ง ์์ต๋๋ค. ์ธ๋ถ์ ์ธ ์ด์ ๋ก ๋ถ๊ฐ๋ฅํฉ๋๋ค. ์๋๋ฉด ๋ค๋ฅธ ๊ฒ์ ์๋ฏธํฉ๋๊น? ๊ทธ๋ฆฌ๊ณ resolutions
๋จ์ผ ์ข
์์ฑ์ ์ถ๊ฐํ๋ ๊ฒ์ด ๊ฐ๋ฅํ์ง ์๋ค๊ณ ์๊ฐํฉ๋๊น?
@BorntraegerMarc ๋ webpack dep์ ๋ํ ์ฌ๋ฐ๋ฅธ ๋ฒ์ ์ผ๋ก ์
๋ฐ์ดํธ๋์์ง๋ง ์ด๋ค ์ด์ ๋ก yarn์ ๋ฃจํธ ์ข
์์ฑ์ผ๋ก Enhanced-resolve๋ฅผ ์ค์นํฉ๋๋ค. ๋ฐ๋ผ์ ์ด๋ฅผ ์์ ํ๋ ค๋ฉด "enhanced-resolve": "3.3.0"
๋ฅผ package.json devDependencies์ ์ถ๊ฐํ๊ธฐ๋ง ํ๋ฉด ๋ฉ๋๋ค. ์ ์ด๋ ์ง๊ธ์ ์์ ํด์ผ ํฉ๋๋ค.
@sickelap "enhanced-resolve": "3.3.0",
๋ฅผ devDependencies์ ์ถ๊ฐํ๊ณ yarn cache clean
๋ฐ yarn
ํ์ง๋ง ์ฌ์ ํ ๋์ผํ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค. yarn.lock
ํ์ผ๋ ์ญ์ ํ์ต๋๋ค.
yarn.lock ํ์ผ์ ์ฌ์ ํ ํญ๋ชฉ์ด ํ์๋ฉ๋๋ค.
enhanced-resolve@^3.0.0:
version "3.4.1"
resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz#0421e339fd71419b3da13d129b3979040230476e"
dependencies:
graceful-fs "^4.1.2"
memory-fs "^0.4.0"
object-assign "^4.0.1"
tapable "^0.2.7"
/media/vimal/personal/future/dar-wepapp/src/app/properties-view/properties-view.component.ts์ ์ ํ PropertiesViewComponent ์ค๋ฅ๋ 2๊ฐ ๋ชจ๋ ์ ์ธ์ ์ผ๋ถ์ ๋๋ค: /media/vimal/personal์ AppModule /media/vimal/personal/future/dar-wepapp/src/app/login/login.module.ts์ /future/dar-wepapp/src/app/app.module.ts ๋ฐ loginModule! /media/vimal/personal/future/dar-wepapp/src/app/properties-view/properties-view.component.ts์ PropertiesViewComponent๋ฅผ /media/vimal/personal/future/์ AppModule์ ๊ฐ์ ธ์ค๋ ์์ ๋ชจ๋๋ก ์ด๋ํ๋ ๊ฒ์ ๊ณ ๋ คํ์ญ์์ค. dar-wepapp/src/app/app.module.ts ๋ฐ loginModule์ /media/vimal/personal/future/dar-wepapp/src/app/login/login.module.ts์ ์์ต๋๋ค. /media/vimal/personal/future/dar-wepapp/src/app/properties-view/properties-view.component.ts์ PropertiesViewComponent๋ฅผ ๋ด๋ณด๋ด๊ณ ํฌํจํ๋ ์ NgModule์ ๋ง๋ ๋ค์ /media์ AppModule์์ ํด๋น NgModule์ ๊ฐ์ ธ์ฌ ์๋ ์์ต๋๋ค. /vimal/personal/future/dar-wepapp/src/app/app.module.ts ๋ฐ loginModule์ /media/vimal/personal/future/dar-wepapp/src/app/login/login.module.ts์ ์์ต๋๋ค.
./src/main.ts์ ์ค๋ฅ
๋ชจ๋์ ์ฐพ์ ์ ์์: ์ค๋ฅ: '/media/vimal/personal/future/dar-wepapp/src'์ './$$_gendir/app/app.module.ngfactory'๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
@ ./src/main.ts 3:0-74
@ multi ./src/main.ts
๋ฉ์ง ์์ด๋์ด
@BorntraegerMarc @mildfuzz ์์ฌ ํด์๋์ ๋ฌด์์ด ๋ฌธ์ ์ธ์ง ๋ชจ๋ฅด์ง๋ง ์ง์ ์๋ํด ๋ณผ ์ ์์ต๋๋ค. ๋ด๊ฐ ๋์งํ ์ ์๋ package.json
๋ฅผ ์ ๊ณตํ ์ ์์ต๋๊น?
@ryzy ๋๋ ๋น์ ์ package.json์ ์๋ํ๊ณ ์ด๊ฒ์ด ๋ด๊ฐ ์ป์ ๊ฒ์ ๋๋ค.
kamik<strong i="11">@T460p</strong> MINGW64 D:/sandbox/tmp
$ yarn --version
0.24.6
kamik<strong i="12">@T460p</strong> MINGW64 D:/sandbox/tmp
$ yarn
yarn install v0.24.6
info No lockfile found.
[1/4] Resolving packages...
[2/4] Fetching packages...
warning [email protected]: The platform "win32" is incompatible with this module.
info "[email protected]" is an optional dependency and failed compatibility check. Excluding it from installation.
[3/4] Linking dependencies...
[4/4] Building fresh packages...
success Saved lockfile.
Done in 81.84s.
kamik<strong i="13">@T460p</strong> MINGW64 D:/sandbox/tmp
$ yarn list enhanced-resolve
yarn list v0.24.6
โโ [email protected]
Done in 0.86s.
kamik<strong i="14">@T460p</strong> MINGW64 D:/sandbox/tmp
$ yarn why enhanced-resolve
yarn why v0.24.6
[1/4] Why do we have the module "enhanced-resolve"...?
[2/4] Initialising dependency graph...
[3/4] Finding dependency...
[4/4] Calculating file sizes...
info Reasons this module exists
- "@angular/cli#@ngtools/webpack" depends on it
- "@angular/cli#
๊ทธ๋์ atm v0.27.5
๋ ์ข
์์ฑ์ ์ ๋๋ก ํด๊ฒฐํ์ง ์๋ ๋ฐ๋ฉด v0.24.6
๋ ์ข
์์ฑ์ ํด๊ฒฐํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
@filipesilva thx ํ์ . ๋๋ ์์ฌ v0.27.5
์ค์ด๋ฏ๋ก ์๋ง๋ ๊ทธ๊ฒ์ด ๋ฌธ์ ์ผ ๊ฒ์
๋๋ค ...
๋ด package.json์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
{
"name": "x",
"version": "1.0.0",
"engine": {
"node": "0.10.x",
"npm": "2.1.x"
},
"homepage": "komed-health.com",
"scripts": {
"build:prod": "ng build --prod"
},
"dependencies": {
"@angular/animations": "4.3.1",
"@angular/common": "4.3.1",
"@angular/compiler": "4.3.1",
"@angular/core": "4.3.1",
"@angular/forms": "4.3.1",
"@angular/http": "4.3.1",
"@angular/platform-browser": "4.3.1",
"@angular/platform-browser-dynamic": "4.3.1",
"@angular/platform-server": "4.3.1",
"@angular/router": "4.3.1",
"@angular/service-worker": "1.0.0-beta.16",
"@codebakery/origami": "1.2.3",
"@types/socket.io-client": "1.4.29",
"angular-translator": "2.2.0",
"check-browser": "0.1.7",
"classlist.js": "1.1.20150312",
"core-js": "2.4.1",
"intl": "1.2.5",
"ngx-auto-unsubscribe": "1.0.0",
"rollup": "0.45.2",
"rollup-plugin-commonjs": "8.0.2",
"rollup-plugin-node-resolve": "3.0.0",
"rxjs": "5.4.2",
"tributejs": "2.3.7",
"zone.js": "0.8.14"
},
"devDependencies": {
"@angular/cli": "1.2.4",
"@angular/compiler-cli": "4.3.1",
"@types/jasmine": "2.5.53",
"browserstack-local": "1.3.0",
"codelyzer": "3.1.2",
"cpr": "2.2.0",
"db-migrate": "0.10.0-beta.21",
"db-migrate-mongodb": "1.2.2",
"enhanced-resolve": "3.3.0",
"jasmine-core": "2.6.4",
"jasmine-spec-reporter": "4.1.1",
"karma": "1.7.0",
"karma-chrome-launcher": "2.2.0",
"karma-cli": "1.0.1",
"karma-coverage-istanbul-reporter": "1.3.0",
"karma-jasmine": "1.1.0",
"karma-jasmine-html-reporter": "0.2.2",
"polymer-cli": "1.3.1",
"protractor": "5.1.2",
"rimraf": "2.6.1",
"ts-node": "3.2.1",
"tslint": "5.5.0",
"typescript": "2.4.2"
}
}
@BorntraegerMarc ๋ dependencies
๋ฐ devDependencies
์๋์ "enhanced-resolve": "3.3.0"
๋ช
์์ ์ผ๋ก ์ง์ ํ๋ ค๊ณ ํ ์ ์์ต๋๋ค.
@bmcswee ๊ทธ๊ฒ๋ ์๋ํ์ง ์์์ต๋๋ค ...
@ํ๋ฆฌํ์ค๋ฐ
๋ฌธ์ #7125์ ๋ํ ๊ทํ์ ์๊ฒฌ์ ๋ฐ๋ผ ์ต์ cli๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๋ค.
- ์ต์ rc1 ์ฌ์ฉ
- [email protected]์ ์ค์นํด๋ ์ฌ์ ํ ๋์ผํ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
yarn
ํ๋ฉด ์๋ํ์ง ์๊ณ npm
ํ๋ฉด ์๋ํฉ๋๋ค.
yarn why v0.27.5
[1/4] Why do we have the module "enhanced-resolve"...?
[2/4] Initialising dependency graph...
[3/4] Finding dependency...
[4/4] Calculating file sizes...
info Has been hoisted to "enhanced-resolve"
info This module exists because it's specified in "devDependencies".
Done in 0.82s.
yarn list v0.27.5
โโ [email protected]
โโ [email protected]
โโ [email protected]
Done in 0.78s.
md5-5f5afc9e77bd4c2f2ec312c6146b7f7e
ng new my-prj --skip-install --skip-git -dir my-prj --style scss --routing
[email protected]
์ถ๊ฐํ๋ ๊ฒ ์ธ์๋ ํ๋ก์ ํธ์์ ๋ค๋ฅธ ๋ณ๊ฒฝ ์ฌํญ์ด ์์ต๋๋ค.
@filipesilva ์ค์ ๋ก ์ค ๋ฌธ์ ์ธ ๊ฒ ๊ฐ์ต๋๋ค! ๋ค์ ๋ฒ์ (0.28.4)์ผ๋ก ์ ๊ทธ๋ ์ด๋ํ๋๋ฐ ์ฌ์ ํ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค.
์ด์ ์์ฌ๋ฅผ v0.24.6
๋ค์ด๊ทธ๋ ์ด๋ํ์ต๋๋ค. ๊ทํ์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ชจ๋ ํด์๋๋ ๊ด์ฐฎ์ ๊ฒ ๊ฐ์ง๋ง([email protected]) ์ค๋ฅ๋ ์ฌ์ ํ ์กด์ฌํฉ๋๋ค.
$ node -v
v6.11.0
$ yarn list
yarn list v0.24.6
...
โโ @angular/[email protected]
...
โโ @ngtools/[email protected]
โ โโ [email protected]
...
โโ [email protected]
...
โโ [email protected]
โ โโ enhanced-resolve@^3.3.0
...
$ yarn why enhanced-resolve
yarn why v0.24.6
info Reasons this module exists
- "@angular/cli#@ngtools/webpack" depends on it
- "@angular/cli#webpack" depends on it
์ด์ ๊ณผ ๋์ผํ package.json ์ ๋๋ค.
์ญ์ ๋ ์์ฌ ์บ์์ ํจ๊ป node_modules ๋ฐ yarn.lock ์์ด ์๋ก ์ค์นํฉ๋๋ค.
AoT ๋น๋ ์ค๋ฅ๊ฐ ์ฌ์ ํ ์์ต๋๋ค( ์ ์ฒด ๋คํ ์ฐธ์กฐ). ๊ธฐ์ด ํ...
@filipesilva ์ค์ ๋ก ๋น๋ํ๋ ค๊ณ (AoT๋ก) ์๋
๋๊ตฐ๊ฐ ์ด ํฐ์ผ์ ๋ค์ ์ด ์ ์์ต๋๊น? ์๋๋ฉด ์ฐ๋ฆฌ๊ฐ ์์ฌ์ ํน์ ํ ์ ํฐ์ผ์ ๋ง๋ค์ด์ผ ํ ๊น์?
Yarn์ ์ํ๋ ํจํค์ง์ ๋ํด 3.4 ๋ฒ์ ์ ๊ณ์ ์ค์นํฉ๋๋ค(์: ๋ฒ์ ๋ฒํธ์ ^๋ฅผ ์ฌ์ฉํ๋ webpack). ๋ด๊ฐ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์๋ ์ ์ผํ ๋ฐฉ๋ฒ์ 3.3.0์ ๊ฐ๋ฆฌํค๋๋ก Enhanced-resolve ^3.4.0 ํญ๋ชฉ์ ๋ฒ์ ๋ฐ ํด๊ฒฐ ํ๋๋ฅผ ์๋์ผ๋ก ๋ณ๊ฒฝํ์ฌ ๋ด yarn.lock์ ์์ ํ๋ ๊ฒ์ด์์ต๋๋ค.
@kavi87 ์, ์ ์๊ฒ๋ ํจ๊ณผ๊ฐ ์์์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๊ฒ์ ๋ถ๋ช ํ ์ฅ๊ธฐ์ ์ธ ํด๊ฒฐ์ฑ ์ด ์๋๋๋ค :์ค๋ง์ผ:
@BorntraegerMarc ์ฅ๊ธฐ์ ์ธ ์๋ฃจ์ ์ ์์ฒด ํด๊ฒฐ์ด ๊ฐ์ ๋๊ธฐ๋ฅผ ๊ธฐ๋ค๋ฆฌ์ง ์์ต๋๊น?
@stwic ์ด๋ฏธ "์์ "์ ๊ฒ์ ํ ๊ฒ ๊ฐ์ต๋๋ค. ๊ทธ๋ฌ๋ ์ด๊ฒ์ด ์ ๋ง๋ก ํด๊ฒฐ๋๋์ง ์๋๋ฉด ์์ธ์ธ์ง ํ์คํ์ง ์์ต๋๋ค...
@BorntraegerMarc https://github.com/webpack/enhanced-resolve/issues/98#issuecomment -317516344
@cebor ๊ฐ์ฌํฉ๋๋ค ๊ทธ๋์ ์ฐ๋ฆฌ๋ @ngtools/webpack
์ธก์์ ์ฅ๊ธฐ์ ์ธ ์์ ์ ๊ธฐ๋ค๋ ค์ผ ํ ๊ฒ ๊ฐ์ต๋๋ค. enhanced-resolve
๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํฉ๋๋ค. WebpackCompilerHost
์์ @ngtools/webpack
WebpackCompilerHost
์ ์ฌ๋ฐ๋ฅธ ๊ตฌํ์ ์ธ์ ์์ํ์ญ๋๊น? ์ค์ ์์ ์ ์ง์คํ ๋ค์ ํ์ฌ ์ค์ ์ผ๋ก ์์ฌ๋ฅผ ์คํํ๋ ๊ฒ์ด ๋ ํฉ๋ฆฌ์ ์ผ ์ ์์ต๋๋ค. WebpackCompilerHost
์์ ์ด ํฌํจ๋ ์ต์ angular-cli ๋ฒ์ ์ ์ป์ผ๋ฉด ์์ฌ๊ฐ ๋ค์ ์๋ํ ๊ฒ์ด๋ผ๊ณ ํ์ ํฉ๋๋ค.
@filipesilva : ๋ด ์ด์ ๋๊ธ https://github.com/angular/angular-cli/issues/7113#issuecomment -317599036์ ๋ณด๊ณ ์ด ๋ฌธ์ ์ ๊ด๋ จ๋ ๊ฒ ๊ฐ์ผ๋ฉด ์๋ ค์ฃผ์๊ฒ ์ต๋๊น? ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ ์ต์ํ์ ์ฌํ์ผ๋ก ์ ๋ฌธ์ ๋ฅผ ์ด๊ฒ ์ต๋๋ค.
@ samridh90 ๊ด๋ จ์ด ์๋ค๊ณ ์๊ฐํฉ๋๋ค. ๋ด ๋ธ๋ผ์ฐ์ ๋ ๋ฌธ์ ์์ด ๋ด ์ ํ ๋น๋๋ฅผ ์คํํ์ต๋๋ค...
@BorntraegerMarc : ์ฑ์ ์ง์ฐ ๋ก๋ ๊ฒฝ๋ก๊ฐ ์์ต๋๊น?
@samridh90 ๋ค
npm install [email protected]
๊ฐ ์๋ํ์ง ์๊ณ ์นํฉ์ ์ฌ์ฉํ๊ณ ์๋ค๋ฉด npm install [email protected]
๋ ์๋ํด ๋ณผ ์ ์์ต๋๋ค. ์ค๋ 3์๊ฐ์ ์์์ต๋๋ค :(
@filipesilva ๋ฒ์จ ๋์งํ ์๊ฐ์ด ์์๋์? :) ๋๋ ๊ทธ ์ฌ์ด์ ์์ฌ๋ฅผ ์ด์์ง๋ง https://github.com/yarnpkg/yarn/issues/4024
@filipesilva ๊ฐ์ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. @ngtools/webpack
ํ์ผ๋ฉฐ ๋ชจ๋ ํจํค์ง๋ฅผ ์ต์ ๋ฒ์ ์ผ๋ก ์
๋ฐ์ดํธํ์ต๋๋ค. ์๋๋ฅผ ์ฐธ์กฐํ์ธ์.
"@angular/compiler-cli": "^4.3.1",
"@angular/platform-server": "^4.3.1",
"@ngtools/webpack": "^1.5.3",
"webpack": "^3.4.0",
"@angular/common": "^4.3.1",
"@angular/compiler": "^4.3.1",
"@angular/core": "^4.3.1",
"@angular/forms": "^4.3.1",
"@angular/http": "^4.3.1",
"@angular/platform-browser": "^4.3.1",
"@angular/platform-browser-dynamic": "^4.3.1",
"@angular/router": "^4.3.1",
์ด๊ฒ์ webpack
> 3.3.0
๋ฐ @ngtools/webpack
์ ํธํ๋์ง ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
npm install [email protected] [email protected]
๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค.
์, @ngtools/webpack
๋ฐ [email protected]
์ค๋จ์ npm์์๋ ๋น๋๋ฉ๋๋ค.
์ด ๋ฌธ์ ๋ฅผ ๋ค์ ์ด์ด์ผ ํ์ง ์์ต๋๊น? ๋ง์ ์๋๋ฆฌ์ค์์ ์ด๊ฒ์ ํ์คํ ์์ ๋์ง ์์ ๊ฒ ๊ฐ์ต๋๋ค.
[email protected]
์ ํจ๊ป ์๋ํ๋๋ก ํ ์ ์๋ ์ฌ๋๋ค์๊ฒ ์ ๋ฅผ ํฌํจ์ํค์ญ์์ค. ๋๋ฅผ ๊ตฌํ๊ธฐ ์ํด 3์๊ฐ์ ํฌ์ํ [email protected]
๋ค์ด๊ทธ๋ ์ด๋ํ๋ฉด ํ๋ฅญํฉ๋๋ค.
์์ฌ๋ก ์ค์นํ๊ธฐ ์ํ ๋น ๋ฅธ ์์ : ๋ด package.json์ "3.3.0"์ ํฅ์๋ ํด๊ฒฐ์ ๊ณ ์ ํ๊ณ webpack์์ ํฅ์๋ ํด๊ฒฐ์ ์ญ์ ํ๋ "postinstall"-์คํฌ๋ฆฝํธ๋ฅผ ์ถ๊ฐํ์ต๋๋ค.
์ง๊ธ์ npm install [email protected] [email protected] ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ๊ฒ์ ๋๋ค. Txanks
์์ฌ๋ฅผ ์ฌ์ฉํ๋ฉด @play2web ์ด ํด๊ฒฐ๋์ง ์์ต๋๋ค...
๋ฐ๋ผ์ ํ์ฌ ๊ณต์์ ์ธ(100% ์๋) ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์์ฌ๋ฅผ ๋ฒ์ 0.24.6์ผ๋ก ๋ค์ด๊ทธ๋ ์ด๋ํ๋ ๊ฒ์ ๋๋ค.
@BorntraegerMarc "๊ณต์์ ์ธ" ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋ํ ์ฐธ์กฐ๋ฅผ ์ ๊ณตํ ์ ์์ต๋๊น? AFAIK @ngtools/webpack
์ webpack
์ฌ์ด์ ์ข
์์ฑ ์ถฉ๋์ด ์์ผ๋ฏ๋ก ์์ ์ฌํญ์ด ์์ต๋๋ค. @ngtools/webpack
๋ ์์ฌ ์ฌ์ฉ์๋ฅผ ์ํด ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์
๋ฐ์ดํธํด์ผ ํ ๊ฐ๋ฅ์ฑ์ด ์์ต๋๋ค.
OK @uitgewis with "official" ๋ด ๋ง์ ๊ณต์์ ์ผ๋ก (์ง๊ธ๊น์ง) ๋ฒ๊ทธ๋ก ์ธ์ ๋๋ค๋ ๋ป์ ๋๋ค. https://github.com/yarnpkg/yarn/issues/4024 ๋ ์ด์ ์ ๋ณด๊ฐ ์์ต๋๋ค. ์ฌ๊ธฐ์์ "๊ณต์"์ด๋ผ๋ ๋จ์ด๋ ๋๋ฌด ๊ฐํ ๋จ์ด์ผ ์ ์์ต๋๋ค. ๐ ๋ค๋ฅธ ๊ฒ์ด ์๋ํ์ง ์์๊ธฐ ๋๋ฌธ์ 0.24.6์ผ๋ก ๋ค์ด๊ทธ๋ ์ด๋ํด์ผ ํ์ต๋๋ค
sokra(https://github.com/webpack/enhanced-resolve/issues/98#issuecomment-317516344)์์ ๊ฐ์งํ ๋ฌธ์ ๊ฐ ๋ค์ ๋ฆด๋ฆฌ์ค์ ๋ก๋๋งต์ ์๋ ๊ฒฝ์ฐ "๊ณต์์ ์ธ" ์ค๋ช ์ด ํ๋ฅญํ ๊ฒ์ ๋๋ค. ์๋๋ฉด ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ฌด์์ ํด์ผ ํฉ๋๊น?
ํ์ ์ ์ง:
@ngtools/webpack
๋ webpack > 3.3.0
์ ํจ๊ป ๋
๋ฆฝ ์คํํ์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค.@angular/cli
๋ ์์ฌ > 0.24.6
์ ํจ๊ป ์ฌ์ฉํ ์ ์์ต๋๋ค.์ด ํด๊ฒฐ ๋ฐฉ๋ฒ์ด ์ซ์ง๋ง yarn
๋ค์ด๊ทธ๋ ์ด๋๊ฐ ์ต์
์ด ์๋ ๊ฒฝ์ฐ ๊ธฐ์ ์ ์ผ๋ก yarn.lock
ํ์ผ์ ์์ผ๋ก "์์ "ํ ์ ์์ต๋๋ค. Angular ๊ด๋ จ ์ข
์์ฑ์ ์
๊ทธ๋ ์ด๋ํ ํ ์ ๊ธ ํ์ผ์ ๋ค์๊ณผ ๊ฐ์์ผ ํฉ๋๋ค.
[email protected]:
version "3.3.0"
resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-3.3.0.tgz#950964ecc7f0332a42321b673b38dc8ff15535b3"
dependencies:
graceful-fs "^4.1.2"
memory-fs "^0.4.0"
object-assign "^4.0.1"
tapable "^0.2.5"
enhanced-resolve@^3.0.0:
version "3.4.1"
resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz#0421e339fd71419b3da13d129b3979040230476e"
dependencies:
graceful-fs "^4.1.2"
memory-fs "^0.4.0"
object-assign "^4.0.1"
tapable "^0.2.7"
๋ค์์ผ๋ก ๊ต์ฒดํ์ญ์์ค.
[email protected], enhanced-resolve@^3.0.0:
version "3.3.0"
resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-3.3.0.tgz#950964ecc7f0332a42321b673b38dc8ff15535b3"
dependencies:
graceful-fs "^4.1.2"
memory-fs "^0.4.0"
object-assign "^4.0.1"
tapable "^0.2.5"
0.27.5๋ก ๋ค์ ๋น๋ํ ์ ์์ต๋๋ค. ํ์ผ ์์ฒด์์ ์ ์ ์๋ฏ์ด yarn.lock
ํ์ผ์ ์๋์ผ๋ก ํธ์งํด์๋ ์ ๋์ง๋ง ๋ณด๋ค ๊ฐ๋ ฅํ ์์ ์ฌํญ์ด ๋ฐ๊ฒฌ๋ ๋๊น์ง ์ด ์์
์ _ํด์ผ ํฉ๋๋ค_.
@Guston ์ ๋๋ฅผ ์ํด ์๋ํ์ง ์์ต๋๋ค. yarn
์คํํ ๋๋ง๋ค yarn.lock
์๋ชป๋ ํญ๋ชฉ์ด ๋ค์ ์ถ๊ฐ๋ฉ๋๋ค.
๋ค์์ ์คํจํ ๋น๋๊ฐ ์๋ ๋ด ์ ์ฅ์์ ๋๋ค. https://github.com/cebor/ng2-start
@cebor , ์ด ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ผ๋ฐ CLI ํ๋ก์ ํธ์๋ง ํด๋น๋ฉ๋๋ค(์ฆ, yarn
๋ฌธ์ ๋ ํด๊ฒฐํ์ง๋ง webpack
๋ฌธ์ ๋ ํด๊ฒฐํ์ง _์์ต๋๋ค_).
webpack@^3.4.1
์ข
์์ฑ์ด ์์ผ๋ฏ๋ก ์ ๋ฒ์ ์ด enhanced-resolve@^3.4.0
์ ๋ช
์์ ์ผ๋ก ์์กดํ๊ธฐ ๋๋ฌธ์ ์ ๊ธ ํ์ผ์ ์์ ํ ์ ์์ต๋๋ค. ๋จผ์ [email protected]
๋ก ๋ค์ด๊ทธ๋ ์ด๋ํด์ผ๋ง ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค.
@cebor @Guston์ด ์ ์ํ ์์
์ ์ํํ ํ yarn --pure-lockfile
ํ๋ฉด ์๋ํฉ๋๋ค. ์๋ง๋ node_modules
๋ ์ญ์ ํ๊ณ ์ถ์ ๊ฒ์
๋๋ค.
๋ชจ๋์ ์ฐพ์ ์ ์์: ์ค๋ฅ: 'hello/src'์์ './$$_gendir/app/app.module.ngfactory'๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
์ค๋ฅ๊ฐ ๋ฐ์ํ๋ ์ฌ๋๋ค์ ์ํ ์ถ๊ฐ ์ฐธ๊ณ ์ฌํญ์ ๋๋ค. ์ฝ๋์ ๋ฌธ์ ๊ฐ ์์ ์๋ ์์ต๋๋ค. AOT๋ฅผ ๊นจ๋จ๋ฆด ์ ์๋์ง ํ์ธํ๋ ค๋ฉด ์ฌ๊ธฐ๋ฅผ ์ฐธ์กฐํ์ญ์์ค. ์ผ๋ถ๋ ๋น๋๋ฅผ ์ค๋จํ๊ณ ์ผ๋ถ๋ ๋ฐํ์์ ์คํจํฉ๋๋ค(๊ฒฝํ์).
https://github.com/rangle/angular-2-aot-sandbox
๋๋ ์ด ๋ฒ๊ทธ์ ๋ถ๋ช์ณค๊ณ ๋ด ์ฑ์ ์ด๋ฌํ ๋ฌธ์ ์ค ํ๋๊ฐ ์์๊ธฐ ๋๋ฌธ์ ์ด์ ํนํ ์ด ๋ฌธ์ ๋ฅผ ๊ฒช์์ต๋๋ค ๐
@krjordan ์ฌ๊ธฐ์ ๋ฐ๋ณตํ์ง๋ ์๊ฒ ์ง๋ง #7136์์ ์ค๋ช
ํ ๋๋ก ํธ์งํ๋ฉด --pure-lockfile
์ต์
์ด _ํ์ํ์ง ์์ต๋๋ค_.
Yarn ์ฌ์ฉ์: https://github.com/angular/angular-cli/issues/7136#issuecomment -318313404์ ์ ์ฉ ํ ๋ก ์ฃผ์ ๊ฐ ์์ต๋๋ค.
๋ชจ๋ ์ฌ์ฉ์์๊ฒ : ๋น์ ์ ์ webpack
๋น์ ์ package.json์. Webpack์ ๋์์ ์ค์น๋ ์ฌ๋ฌ ๋ฒ์ ์์ ์ ๋๋ก ์๋ํ์ง ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ https://github.com/angular/angular-cli/issues/6417#issuecomment -315708400์ ์ฐธ์กฐ
์ฐ๋ฆฌ๋ @ngtools/webpack
(https://github.com/webpack/enhanced-resolve/issues/98#issuecomment-317518593์ ๋ฐ๋ผ)๋ฅผ ์
๋ฐ์ดํธํ ๊ฒ์ด์ง๋ง ์ด๊ฒ์ ํ์์ ๋ฐ๋ผ ๋จ๊ธฐ๊ฐ์ ์ผ์ด๋ ์ผ์ด ์๋๋๋ค. ์ฝ๊ฐ์ ์์
.
๊ทธ๋์ ์ฐ๋ฆฌ๋ [email protected]
(https://github.com/angular/angular-cli/pull/7123) ๋ฐ [email protected]
(https://github.com/angular/angular- cli/pull/71300). ์ด๋ก ์ธํด ์ข
์์ฑ์ด ์ ๋๋ก ํด๊ฒฐ๋ฉ๋๋ค.
@samridh90 https://github.com/angular/angular-cli/issues/7113#issuecomment -317599036์์ ๋ฌด์จ ์ผ์ด ์ผ์ด๋๊ณ ์๋์ง ๋ชจ๋ฅด์ง๋ง ๊ด๋ จ์ด ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ์ ๋ฌธ์ ๋ฅผ ์ด โโ์ ์์ต๋๊น?
@filipesilva ๊ทธ๋์ angular-cli ํ๋ก์ ํธ์ ํจ๊ป ์ฌ์ฉํ๋ ค๋ฉด package.json์ [email protected]
๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ผ๋ก ์ถฉ๋ถ ํฉ๋๊น , ์๋๋ฉด ๋ฌถ์ด์ผ ํฉ๋๊น?
์์ ๋ค๋ฅธ ์ฌ๋๋ค์ ์๊ฒฌ์ ๋ฐ๋ผ @angular/ cli @
์ค๊ฐ ์์ ์ ๋ฌด์์ ๋๊น? ์์์ ์ธ๊ธํ ์ฒซ ๋ฒ์งธ ํญ๋ชฉ์ผ๋ก ์ถฉ๋ถํฉ๋๊น?
์ฐธ๊ณ ๋ก, ์ด๊ฒ์ด ์๋ํ๋ค๋ ์๋ฌธ ์๋ ๋ถ๊ตฌํ๊ณ Enhanced-resolve๊ฐ 3.4.1๋ก ์ถฉ๋ ํ๋๋ผ๋ ๋ฐฉ๊ธ ์ถ์๋ 1.2.6
์์ ์ฌ์ ํ ์ด ์ค๋ฅ๊ฐ ๋ฐ์ ํฉ๋๋ค .
๋๋ ์ด๊ฒ์ด npm 5์ ๊ด๋ จ์ด ์์ ์ ์๋ค๋ ์ ์ ์ ๋ณด์์ต๋๋ค...์ด์จ๋ ? (์
๋ฐ์ดํธํ๊ธฐ ์ ์ package-lock.json
๋ฅผ ์ ๊ฑฐํ์ต๋๋ค.)
๐ ํธ์ง: ์๋ ์ด ๋๊ธ์ ์ฐธ์กฐํ์ธ์ . ์ฌ์ค ๊ด๋ จ์ด ์์ต๋๋ค.
CLI ํ๋ก์ ํธ์ ๊ฒฝ์ฐ
0.24.6
3.3.0
@ngtools/webpack
์ฌ์ฉํ๋ ๋น CLI ํ๋ก์ ํธ์ ๊ฒฝ์ฐ
0.24.6
3.3.0
3.3.0
์ด์ (https://github.com/angular/angular-cli/pull/7169) 1.2.6
/ 1.3.0-rc.3
์๋์ ์๋ก์ด ์์ ์ฌํญ์ด ์์ต๋๋ค. [email protected]
์ดํ๊ฐ ์์ฌ ์๋์์๋ ์ฌ๋ฐ๋ฅด๊ฒ ํด๊ฒฐ๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
@russelltrafford ๋งํ๊ธฐ ์ด๋ ต๊ณ ํจํค์ง ๊ด๋ฆฌ์์ ๋ฐ๋ผ ๋ค๋ฆ
๋๋ค. npm์ ์๋ค๋ฉด ๊ด์ฐฎ์ ๊ฒ์
๋๋ค. ํ
์คํธํ๋ ค๋ฉด package-lock.json
/ yarn.lock
/ node_modules
package.json
ํ๊ณ [email protected]
, npm install
, ng build --aot
. $$gendir
์ ๋ํ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ฉด ์๋ํ์ง ์์ต๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ์๋ํ๋ ๊ฒ์
๋๋ค.
@michaelsanford npm ๋๋ yarn์ ์ฌ์ฉํ๊ณ ์์ต๋๊น? package.json์ ์ ๊ณตํ ์ ์์ต๋๊น? ๋ด๊ฐ ์ง์ ํ ์คํธํ๊ณ ๋ฌด์จ ์ผ์ด ์ผ์ด๋๋์ง ๋ณผ ์ ์์ต๋๋ค.
๋ํ, ์ฌ์ฉํ๋ ๊ฒฝ์ฐ 1.2.6
/ 1.3.0-rc.3
์ค ํ๋๋ฅผ ๊ฐ์ง๊ณ ๋น์ ์ด ํ์๊ฐ ์์ต๋๋ค๋ฅผ enhanced-resolve
๋๋ webpack
๋น์ ์ package.json
. package.json
(https://github.com/angular/angular-cli/issues/7113#issuecomment-318328125)์ webpack
๊ฐ ์์ผ๋ฉด ๋ฌผ๊ฑด์ด ๊นจ์ง ์๋ ์์ต๋๋ค.
@ngtools/[email protected]
๋ค์ ์ ์๋ ๐
@filipesilva ๋คํ ์ ๋๋ค ํด๊ฒฐ๋์ง๋ง ๊ด๋ จ ๋ฌธ์ ๋ก ์๋ฏธ ์๋ ์ค๋ฅ ๋ฉ์์ง๋ฅผ ์์ ํ์ฌ ํฅํ ์ ์ฌํ ์ค๋ฅ๊ฐ ์ ์ฉํ ์ ๋ณด๋ฅผ ์ ๊ณตํ ์ ์์๊น์? (๊ฐ๋ฐ์๊ฐ ๋ณผ ์ ์๋ ํ์ผ์ ์ฐธ์กฐํ๋ ์ค๋ฅ๋ ์ฌ์ฉ์ ์นํ์ ์ด์ง ์์ต๋๋ค.)
@ngtools/[email protected]
์ฌ์ฉํด๋ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์ง ์์์ต๋๋ค. ๋๋ ์๋์ผ๋ก ์ค์นํ๋ค [email protected]
์คํ ํ ํ npm install
๋ค์ ๋ณต์ฌ / ๋ถ์ฌ ๋ฃ๊ธฐํ๋ค node_modules/enhanced-resolve
์ node_modules/webpack/node_modules/enhanced-resolve
์ด ์์
์ ์ํํ๋ ค๋ฉด.
@filipesilva ํ์ง๋ง ๋ฌผ๋ก ์ ๋๋ค! ๊ฐ์ฌํฉ๋๋ค ๐
Windows 10(cmdr ์ ธ ์๋)์์ [email protected] ๋ฐ [email protected] ๋ฅผ ์คํํ๊ณ ์์ต๋๋ค.
๋ด ์ ์ญ Angular CLI๋ 1.2.6์ด๋ฉฐ ๋ด ํ๋ก์ ํธ์ ์ค์น๋ ๊ฒ๊ณผ ์ผ์นํฉ๋๋ค.
ฮป npm ls -g @angular/cli
`-- @angular/[email protected]
๋ค์์ ๋ด ํ๋ก์ ํธ์ package.json
.
{
"name": "prod-test-fail",
"version": "1.0.0",
"private": true,
"dependencies": {
"@angular/animations": "^4.3.1",
"@angular/common": "^4.3.1",
"@angular/compiler": "^4.3.1",
"@angular/core": "^4.3.1",
"@angular/forms": "^4.3.1",
"@angular/http": "^4.3.1",
"@angular/platform-browser": "^4.3.1",
"@angular/platform-browser-dynamic": "^4.3.1",
"@angular/router": "^4.3.1",
"bootstrap": "^3.3.7",
"core-js": "^2.4.1",
"font-awesome": "^4.7.0",
"jquery": "^3.2.1",
"moment": "^2.18.1",
"rxjs": "^5.4.2",
"zone.js": "^0.8.14"
},
"devDependencies": {
"@angular/cli": "1.2.6",
"@angular/compiler-cli": "^4.3.1",
"@angular/language-service": "^4.3.1",
"@types/core-js": "^0.9.42",
"@types/jquery": "^3.2.9",
"@types/node": "8.0.17",
"codelyzer": "^3.1.2",
"ts-node": "~3.3.0",
"tslint": "^5.5.0",
"typescript": "^2.4.2"
}
}
์ค๋ ์์นจ์ node_modules/
ํด๋๋ฅผ ์ญ์ ํ๋๋ฐ package-lock.json
๋ฐ npm์ด ์์ ํจํค์ง๋ฅผ ์ค์นํ์ฌ ๋ค์๊ณผ ๊ฐ์ ๊ฒฐ๊ณผ๋ฅผ ์ป์์ต๋๋ค.
ng build
์ถ๋ ฅ:
ฮป ng build
Hash: 02193d0724fa51e87a0d
Time: 24523ms
chunk {0} main.bundle.js, main.bundle.js.map (main) 2.24 MB {2} [initial] [rendered]
chunk {1} polyfills.bundle.js, polyfills.bundle.js.map (polyfills) 174 kB {3} [initial] [rendered]
chunk {2} vendor.bundle.js, vendor.bundle.js.map (vendor) 3.89 MB [initial] [rendered]
chunk {3} inline.bundle.js, inline.bundle.js.map (inline) 0 bytes [entry] [rendered]
ng build --prod
๋ฐ ng build --aot
:
ฮป ng build --prod
Hash: adc8c0af1f195a4cd49a
Time: 6075ms
chunk {0} polyfills.dd983c51be469b02aa15.bundle.js (polyfills) 174 kB {3} [initial] [rendered]
chunk {1} main.10609bd5e9ef4fd0b393.bundle.js (main) 713 bytes {2} [initial] [rendered]
chunk {2} vendor.a590f07d547ec4b39908.bundle.js (vendor) 849 kB [initial] [rendered]
chunk {3} inline.bf6c517a9f6f64c103ca.bundle.js (inline) 0 bytes [entry] [rendered]
ERROR in Cannot determine the module for class ModalInstanceComponent in C:/Users/<me>/app/src/ui/src/app/components/modal/modalInstance.ts! Add ModalInstanceComponent to the NgModule to fix it.
ERROR in ./src/main.ts
Module not found: Error: Can't resolve './../$$_gendir/src/app.module.ngfactory' in 'C:\Users\<me>\app\src\ui\src'
@ ./src/main.ts 3:0-77
@ multi ./src/main.ts
์ด๊ฒ์ด _beta-6_์์ ํ์ด๋ angular 2 ํ๋ก์ ํธ๋ผ๋ ์ ์ ์ฃผ๋ชฉํ ๊ฐ์น๊ฐ ์์ต๋๋ค(์ด๊ฒ์ด ๋ด ๋ฌธ์ ์ ์ง์ ํ ์์ธ์ด์ด์ผ ํจ). angular๊ฐ ์ ๋ฐ์ดํธ๋จ์ ๋ฐ๋ผ 3์ฃผ๋ง๋ค ์ต์ ์ ๋ณด๋ฅผ ์ ์ง์ ์ผ๋ก ์ ์งํด ์์ต๋๋ค.
ng
๋ก ์ปดํ์ผํ ์ ์๋๋ก ํ๋ก์ ํธ๋ฅผ ๋ค์ ๊ด๋ฒ์ํ๊ฒ ๋ณ๊ฒฝํ์ต๋๋ค. ng new
๋ก ํ
ํ๋ฆฟ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค๊ณ ํ์ผ ๋ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ณ๊ฒฝ ์ฌํญ์ ์๋์ผ๋ก ๋ณต์ฌํ๋ ๋ค์ ํ์ฉ๋๋ ๊ฐ์ด๋๋ฅผ ๋ฐ๋์ต๋๋ค.
์ด๊ฒ์ ๋ฏธํด๊ฒฐ ModalInstanceComponent
์ค๋ฅ๋ฅผ ์ค๋ช
ํฉ๋๋ค. ํ
ํ๋ฆฟ์ด ์๊ณ ๋ค๋ฅธ ๊ตฌ์ฑ ์์์์ ์ธ์คํด์คํ๋ฉ๋๋ค. ๋ด ๊ธฐ๋ณธ @NgModule
์ ํฌํจํ๋ฉด ์๋ก์ด ์ค๋ฅ๊ฐ ์ฐ์์ ์ผ๋ก ๋ฐ์ํ๋ฏ๋ก ์ง๊ธ์ ๊ทธ๋๋ก ๋์์ต๋๋ค. ๋๋ ์ด๊ฒ์ด (์ง๊ธ?) ์ํฐ ํจํด์ด๋ผ๊ณ ์์ํ๊ณ ๊ทธ๊ฒ์ ๋ค์ ๋ฐฉ๋ฌธํ ๊ฒ์
๋๋ค.
์ด ์ ํ์ ๋ฌธ์ ๋ ๊ฑฐ์ ๋์์ ๋ฐ์ํ์ง๋ง ๊ด๋ จ์ด ์์ ์ ์์ต๋๋ค. ์ง๊ธ์ 0.8.17
์์ ์ด ์ค๋ฅ๊ฐ ๋ฐ์ํ์ง ์๋ ๊ฒ ๊ฐ์ง๋ง ๋จผ์ can't resolve $$_gendir
์ค๋ฅ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. .17
๋ฐ .16
๋ชจ๋ ์๋ํ์ต๋๋ค.
(๊ทธ๋ฆฌ๊ณ ์์ธ ๋ ธ๋ ์ฌ๋๋ค์ ์ํด ๊ทธ๋ ์ต๋๋ค. ์ ๋ jQuery๋ฅผ ์ ๊ฑฐํ๊ณ ์์ต๋๋ค ๐.)
@michaelsanford ์, ์ด์ ๋ณด๋ ์ฒซ ๋ฒ์งธ ์ค๋ฅ๊ฐ ์ค์ ๋ก ๋ ๋ฒ์งธ ์ค๋ฅ๋ฅผ ์ผ์ผํค๊ณ ์์ต๋๋ค.
C:/Users/์ ModalInstanceComponent ํด๋์ค์ ๋ํ ๋ชจ๋์ ๊ฒฐ์ ํ ์ ์์ ์ค๋ฅ
/app/src/ui/src/app/components/modal/modalInstance.ts! NgModule์ ModalInstanceComponent๋ฅผ ์ถ๊ฐํ์ฌ ์์ ํ์ญ์์ค.
๊ทธ๊ฒ์ด ์คํจํ๊ธฐ ๋๋ฌธ์ AOT๋ ์ค์ ๋ก ์๋ฌด ๊ฒ๋ ์ปดํ์ผํ์ง ์์ผ๋ฏ๋ก ๋ ๋ฒ์งธ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
๋ชจ๋์ ์ฐพ์ ์ ์์: ์ค๋ฅ: './../$$_gendir/src/app.module.ngfactory'๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
์ฌ์ค์ ๋๋ค(ํ์ง๋ง ํด์ํ๊ธฐ ์ด๋ ต์ต๋๋ค).
๋ ๋ฒ์งธ ์ค๋ฅ๋ฅผ ๋ฐ๋ก ์ก์ผ๋ ค๋ฉด ์ฒซ ๋ฒ์งธ ์ค๋ฅ๋ฅผ ์์ ํด์ผ ํฉ๋๋ค.
@filipesilva ๊ทธ๋ด์ง๋ ๋ชจ๋ฅธ๋ค๋ ๊ฐํ ์์ฌ์ด ng
๋ฅผ) ์ฌ์ฉํ๊ธฐ ์ ์ AOT๋ฅผ ์๋ํ์ง ์์์์ ํ์ธํ๊ณ _๋๋จํ_ ๊ฐ์ฌํฉ๋๋ค.
๋๋ ์ฐ๋ฆฌ๊ฐ ์ฌ์ ํ AOT์ ํธํ๋์ง ์๋ ์ฝ๋๋ฅผ ๋ง์ด ๊ฐ์ง๊ณ ์๋ค๊ณ ์๊ฐํฉ๋๋ค. ์ด ํ
ํ๋ฆฟ์ด ์๋ @Component
์ @Directive
๋ก ์ด๋ํ๋ ๋ฆฌํฉํ ๋ง ์์
์ด ์์ต๋๋ค(์ ์ด๋ฐ ์์ผ๋ก ์์ฑ๋์๋์ง ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค).
_์
๋ฐ์ดํธ_ ์ฌ์ ํ _prod_ ๋ฒ๋ค์ ์ํ๊ณ ng
์ฌ์ฉ์ ์์ํ ์ด์ ๊ฐ์ ๋ฌธ์ ๊ฐ ์๋ ๋ค๋ฅธ ์ฌ๋๋ค์ ์ํด ๋ค์์ ๊ธฐ๋ฅ์ ์ ํ๋ฆฌ์ผ์ด์
ํจํค์ง๋ฅผ ๋ด๋ณด๋
๋๋ค.
ng build --prod --aot=false
@filipesilva๋ฅผ ์ ์ฐพ์ผ
๊ทธ๋ ๋ค๋ฉด ์ด๊ฒ์ ๋ชจ๋ฌ์ ์ฌ์ฉํ๋ ํ๋ก์ ํธ์๋ง ์ํฅ์ ์ค๋๊น? ์ฐ๋ฆฌ๋ ๋ฐฉ๊ธ ์ฒซ ๋ฒ์งธ ๋ชจ๋ฌ์ ์ถ๊ฐํ๋๋ฐ ์ด๊ฒ์ด ์ ์ด ๋ฌธ์ ๊ฐ '๊ฐ์๊ธฐ' ๋ฐ์ํ๋ ๊ฒ์
๋๊น? ์ฆ, ๋ค๋ฅธ ์ฑ์ ๋ชจ๋ฌ์ ์ฌ์ฉํ์ง ์์ผ๋ฉฐ ์ด ์ค๋ฅ๋ ๋ฐ์ํฉ๋๋ค...
@russelltrafford ๋ ๋ชจ๋ฌ ์์ฒด๊ฐ ์๋๋ผ
[email protected] ์ด ์๋ํ์ง ์์ต๋๋ค.
package.json "enhanced-resolve": "3.3.0"์ ๋ค์ ์ค์ ํฌํจํฉ๋๋ค
npm install ๋ฐ ng build --prod ์คํ
๊ฐ์ฌ ํด์
์๋
ํ์ธ์ ์ฌ๋ฌ๋ถ, ์ฌ์ฉํ์ง ์๋ ๊ตฌ์ฑ ์์๋ฅผ ์ ๊ฑฐํ๊ณ ์๋ํฉ๋๋ค.
Angular ํ์ด ์ฐพ๊ธฐ๊ฐ ๋๋ฌด ์ด๋ ค์ด ์ด ์ค๋ฅ์ ์ค์์ฑ์ ๋ถ์ฌํ๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
ng build --prod๋ฅผ ์คํํ ๋ ๊ฐ์ธ ์์ ๋ณ์, ์ด์ ๋ํ ์๋ฃจ์ ์ ๋ํด ๋ถํํฉ๋๊น, ์๋๋ฉด ๋ชจ๋ ๊ฒ์ ๊ณต๊ฐ๋ก ์ค์ ํด์ผ ํฉ๋๊น?
ํ ํ๋ฆฟ์์ ์ก์ธ์คํ๋ ๋ชจ๋ ๊ตฌ์ฑ์์ ๋น๊ณต๊ฐ๊ฐ ์๋ ๊ณต๊ฐ๋ก ์ค์ ํด์ผ ํฉ๋๋ค. ๋๋ ๊ทธ๊ฒ์ด ๋น์ ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค @ThalesMatoso
์ฟจ...์ด๊ฑด ์๋๊ฒ ์ง๋ง, ๋ ํฐ ์์คํ ์ ์๊ธฐํ๋ฉด ์์ ๋ฐฉํดํ๋ฉด ์๋๋์? ์ ๋ง ์ ์ผํ ๋์์ ๋๊น?
@ThalesMatoso ํ
ํ๋ฆฟ์์ ๊ตฌ์ฑ ์์ ํด๋์ค์ ํ๋๋ฅผ ์ฐธ์กฐํ ๋ ์ค์ ๋ก Angular์ ๋ ๋๋ง ์์ง์ด ํด๋น ๊ฐ์ ๊ฐ์ ธ์ DOM์ ํ์ํ๋ ์ง์นจ์ ์์ฑํ๋ ๊ฒ์
๋๋ค. ๋ ๋๋ฌ๋ ๊ตฌ์ฑ ์์์ ํด๋์ค์ ๋ณ๊ฐ์ด๊ณ ์ธ๋ถ์ ์์ผ๋ฏ๋ก ๊ฐ์ธ ๋ณ์์ ์ก์ธ์คํ๋ ค๊ณ ํ๋ฉด TypeScript ์ปดํ์ผ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค. ๋ฐ๋ผ์ ํ
ํ๋ฆฟ์์ ์ฐธ์กฐ๋๊ฑฐ๋ @ViewChild
์ ๊ฐ์ ๋ฐ์ฝ๋ ์ดํฐ๋ก ์ฃผ์์ด ๋ฌ๋ฆฐ ๊ฒ๊ณผ ๊ฐ์ ์ธ๋ถ ์๋น์ค์ ์ํด ์ํฅ์ ๋ฐ์ ์ ์๋ ๊ตฌ์ฑ ์์ ํด๋์ค์ ๋ชจ๋ ํ๋๋ ๊ณต๊ฐ๋์ด์ผ ํฉ๋๋ค.
๋ํ ๋ช ํํ๊ฒ ํ๊ธฐ ์ํด ์ด๊ฒ์ Angular ๊ธฐ๋ฅ/์๊ตฌ์ฌํญ์ ๋๋ค. CLI์๋ง ํด๋น๋์ง ์์ต๋๋ค.
npm i [email protected]
๊ฐ ์ ๋ขฐํ ์ ์๋ ์์ ์ฌํญ์ด ์๋๋ผ๊ณ ์๊ฐํ๋ ๊ฒ์ด ๋ง์ต๋๊น? @angular/[email protected]
๋ [email protected]
์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ฉฐ [email protected]
์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๋ค. npm์ webpack์ด ์๊ตฌํ๋ ๊ฒ์ ์ป๋๋ก ํ์คํ ๊ฒฐ์ ํ ๊ฒ ๊ฐ์ต๋๋ค.
[email protected]
์ค์น๋ฅผ ์๋ํ๋๋ฐ ํ ๋ฒ ์๋ํ์ง๋ง npm install
๋ค์ ์คํํ๊ณ ์๋์ ๋ฉ์ท์ต๋๋ค. ๋ด๊ฐ ๋ญ๊ฐ๋ฅผ ๋์น๊ณ ์์ต๋๊น ์๋๋ฉด ์์ ์ ์ธ ๋ฐฉ๋ฒ์ผ๋ก ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ๊ฐ ๋ค์ ์ด๋ ต์ต๋๊น?
@studds ์ต์ ๋ฒ์ ์์๋ enhanced-resolve
์๋์ผ๋ก ์ถ๊ฐํ ํ์๊ฐ ์์ต๋๋ค.
"enhanced-resolve"๋ฅผ ์ค์นํ๋ฉด "^3.3.0"์ด ํด๊ฒฐ๋์์ต๋๋ค.
๋๋ resolve 3.3.0 ๋ฐ ngtools webpack 1.6.2๋ฅผ ํฅ์์์ผฐ์ต๋๋ค.
์ฌ์ ํ ์ค๋ฅ๊ฐ ํ์๋จ
'๋ธ๋ผ์ฐ์ ' ํ๋์ ์ ํจํ ๋ณ์นญ ๊ตฌ์ฑ์ด ์์ต๋๋ค.
์ค๋ช
ํ์ผ ์ฌ์ฉ ํ: /Users/ui/package.json (์๋ ๊ฒฝ๋ก: ./src/app/Components/selector)
"@angular/animations": "^4.3.6",
"@angular/cdk": "2.0.0-beta.8",
"@๊ฐ๋/๊ณตํต": "^4.3.6",
"@๊ฐ๋/์ปดํ์ผ๋ฌ": "^4.3.6",
"@angular/compiler-cli": "^4.3.6",
"@๊ฐ๋/์ฝ์ด": "^4.3.6",
"@angular/forms": "^4.3.6",
"@angular/http": "^4.3.6",
"@angular/material": "^2.0.0-beta.8",
"@angular/platform-browser": "^4.3.6",
"@ngrx/core": "^1.0.2",
"@ngrx/effects": "^2.0.0",
"@ngrx/store": "^2.1.2",
"@ngtools/webpack": "^1.6.2",
"ํฅ์๋ ํด๊ฒฐ": "^3.3.0",
๋ง์ง๋ง์ผ๋ก devDependencies "@angular/cli": "1.2.6" ๋ฐ ์ข ์์ฑ "enhanced-resolve": "3.3.0" ๋ฐ @angular/*:"^4.3.6"์์ ์๋ํฉ๋๋ค.
์ ๊ฐ๋ ํ๋ก์ ํธ๋ฅผ ๋ง๋๋ ๋์ ์ด ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
npm์ ํตํด ๋๊ตฌ์ฉ ํจํค์ง ์ค์น.
npm ์ค๋ฅ! Windows_NT 10.0.10240
npm ์ค๋ฅ! argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "--quiet" "์ค์น"
npm ์ค๋ฅ! ๋
ธ๋ v6.10.0
npm ์ค๋ฅ! npm v3.10.10
npm ์ค๋ฅ! C:\Users\Sukeshu\AppData\Local\Tempnpm-3120-1165392c\registry.npmjs.org\jasmine-spec-reporter-\jasmine-spec-reporter-4.1.1.tgz์ ๋ํ shasum ๊ฒ์ฌ ์คํจ
npm ์ค๋ฅ! ์์: 5a6d58ab5d61bea7309fbc279239511756b1b588
npm ์ค๋ฅ! ์ค์ : 1cca12519560608e42bb4efd78f30d818740a4f9
npm ์ค๋ฅ! ๋ฐ์ : https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-4.1.1.tgz
npm ์ค๋ฅ!
npm ์ค๋ฅ! ๋์์ด ํ์ํ๋ฉด ๋ค์ ์ฃผ์์์ ์ด ์ค๋ฅ๋ฅผ ๋ณด๊ณ ํ ์ ์์ต๋๋ค.
npm ์ค๋ฅ! https://github.com/npm/npm/issues
npm ์ค๋ฅ! ์ง์ ์์ฒญ ์ ๋ค์ ํ์ผ์ ํฌํจํ์ญ์์ค.
npm ์ค๋ฅ! C:\Users\Sukeshu\Desktopng2\dappnpm-debug.log
ํจํค์ง ์ค์น์ ์คํจํ์ต๋๋ค. ์๋ฅผ ์ฐธ์กฐํ์ธ์.
ํจํค์ง ์ค์น์ ์คํจํ์ต๋๋ค. ์๋ฅผ ์ฐธ์กฐํ์ธ์.
"enhanced-resolve": "3.3.0"์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ต๋๋ค.
๊ทธ๋ฅ ๋งํด์... ๋ง์ฝ ๋น์ ์ด prod build๋ฅผ ์ฌ์ฉํ๋ค๋ฉด, shrinkwrap์ ์ฌ์ฉํด์ผ ํฉ๋๋ค... ๊ทธ๊ฒ์ ์ฌ๋ฌ๋ถ์ด ์ฌ์ฉํ ์ ์๋ ๊ณณ์ ๋๋ค. ๋ํ, ์ค.
์ด ๋ฌธ์ ๋ ๋ด ๊ฐ๋ ๋น๋์ ngtools/webpack์ ์ฌ์ฉํ์ฌ ๋ฐ์ํ์ต๋๋ค... angular-cli๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ํนํ ngtools/webpack 1.5.3์ ์ฌ์ฉํ๊ณ ๋ฌธ์ ๋ ์์ฒด์ ์ผ๋ก ํด๊ฒฐ๋์์ต๋๋ค... ๋ค๋ฅธ ํ๋ฌ๊ทธ์ธ์ ์ฌ์ฉํ๋ฉด ....
๋ฐ๋ผ์ ngtools/webpack์ ์ฌ์ฉํ๋ ์ฌ๋๋ค์ ํ์ฌ ๋ฒ์ 1.5.3์ ์ฌ์ฉํ๊ธฐ๋ง ํ๋ฉด ๋ฉ๋๋ค. ๋ค๋ฅธ ํจํค์ง๋ฅผ ์ถ๊ฐํ๋ฉด ์ด๋ค ๋ฒ์ ์ ์ฌ์ฉํ๋ ์๋ฌด ๊ฒ๋ ํ์ง ์์ต๋๋ค.
angular/cli๋ฅผ 1.2.4๋ก ์ ๊ทธ๋ ์ด๋ํ๋ฉด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋ฉ๋๋ค.
์ด์ cli๋ก ๋ง๋ Angular ์ฑ์ ์ฌ์ ํ โโ์๋ํ์ง ์์ต๋๋ค. ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ ์ฑ์์ ์๋ก์ด package.json์ ๋ณต์ฌํ์ต๋๋ค.
๊ธฐ์กด Angular ์ฑ์ ์คํํ๋ ค๋ฉด ๋ค์ ํจํค์ง(๋ด ์ฑ์ ์คํํ๋ ๋์ ์ป์ ์ฐจ์ด์ ) ์ค ์ผ๋ถ ํจํค์ง๋ฅผ ์
๊ทธ๋ ์ด๋ํด์ผ ํฉ๋๋ค.
diff seodemo/package.json aotdemo/package.json
2c2
< "name": "seodemo",
---
> "name": "aotdemo",
15,23c15,23
< "@angular/animations": "^4.0.0",
< "@angular/common": "^4.0.0",
< "@angular/compiler": "^4.0.0",
< "@angular/core": "^4.0.0",
< "@angular/forms": "^4.0.0",
< "@angular/http": "^4.0.0",
< "@angular/platform-browser": "^4.0.0",
< "@angular/platform-browser-dynamic": "^4.0.0",
< "@angular/router": "^4.4.3",
---
> "@angular/animations": "^4.2.4",
> "@angular/common": "^4.2.4",
> "@angular/compiler": "^4.2.4",
> "@angular/core": "^4.2.4",
> "@angular/forms": "^4.2.4",
> "@angular/http": "^4.2.4",
> "@angular/platform-browser": "^4.2.4",
> "@angular/platform-browser-dynamic": "^4.2.4",
> "@angular/router": "^4.2.4",
25,26c25,26
< "rxjs": "^5.1.0",
< "zone.js": "^0.8.4"
---
> "rxjs": "^5.4.2",
> "zone.js": "^0.8.14"
29,31c29,31
< "@angular/cli": "1.2.0",
< "@angular/compiler-cli": "^4.0.0",
< "@angular/language-service": "^4.0.0",
---
> "@angular/cli": "1.4.3",
> "@angular/compiler-cli": "^4.2.4",
> "@angular/language-service": "^4.2.4",
35c35
< "codelyzer": "~3.0.1",
---
> "codelyzer": "~3.1.1",
45c45
< "ts-node": "~3.0.4",
---
> "ts-node": "~3.2.0",
์ด๊ฒ์ด ๋ค๋ฅธ ์ฌ๋์๊ฒ ๋์์ด ๋๋ค๋ฉด:
์ด ๋ชจ๋ ๊ฒ์ ์ฝ์ ํ ์ข
์์ฑ์ ๋ฐ๊ฒฌํ์ต๋๋ค. "@angular/cli": "1.1.x",
์ ๊ทธ๋ ์ด๋๋ฅผ ํ์ฉํ์ ๋ ๋ฌธ์ ๊ฐ ์ฌ๋ผ์ก์ต๋๋ค.
Angular CLI 1.5.0์์๋ ๋์ผํ ๋ฌธ์ ๊ฐ ๋ฐ์ํฉ๋๋ค. Enhanced resolve 3.3.0๋ ์์ต๋๋ค.
์ ๋ ์. ๊ณ์ ๋ฐ์: ์ค๋ฅ: './$$_gendir/app/app.module.ngfactory'๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
Angular CLI 1.5.0 ๋ฐ Enhanced resolve 3.3.0์ ์ฌ์ฉํ ํ์๋
์ฌ๊ธฐ๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค. ๋ชจ๋ ์ ๋ฐ์ดํธ ?
[email protected] ์ด ์๋ํ์ง ์์ต๋๋ค.
ํจํค์ง.json
{
"์ด๋ฆ": "LENDZ",
"๋ฒ์ ": "0.0.1",
"์ ์": "Ionic Framework",
"ํํ์ด์ง": " http://ionicframework.com/ ",
"๋น๊ณต๊ฐ": ์ฌ์ค,
"์คํฌ๋ฆฝํธ": {
"clean": "ionic-app-scripts clean",
"๋น๋": "ionic-app-scripts ๋น๋",
"lint": "ionic-app-scripts lint",
" ionic:build ": "ionic-app-scripts ๋น๋",
" ionic:serve ": "ionic-app-scripts ์ ๊ณต"
},
"์ข
์์ฑ": {
"@angular/common": "5.0.0",
"@๊ฐ๋/์ปดํ์ผ๋ฌ": "5.0.0",
"@angular/compiler-cli": "5.0.0",
"@๊ฐ๋/์ฝ์ด": "5.0.0",
"@angular/forms": "5.0.0",
"@angular/http": "5.0.0",
"@angular/platform-browser": "5.0.0",
"@angular/platform-browser-dynamic": "5.0.0",
"@ionic-๋ค์ดํฐ๋ธ/์นด๋ฉ๋ผ": "^4.4.2",
"@ionic-native/core": "4.3.2",
"@ionic-๋ค์ดํฐ๋ธ/์ง๋จ": "^4.5.2",
"@ionic-native/facebook": "^4.4.2",
"@ionic-native/file": "^4.4.2",
"@ionic-๋ค์ดํฐ๋ธ/ํ์ผ ๊ฒฝ๋ก": "^4.4.2",
"@ionic-native/geolocation": "^4.4.2",
"@ionic-native/google-maps": "^4.4.2",
"@ionic-native/http": "^4.4.2",
"@ionic-native/native-storage": "^4.4.2",
"@ionic-native/network": "^4.5.2",
"@ionic-native/onesignal": "^4.5.2",
"@ionic-native/push": "^4.4.2",
"@ionic-native/splash-screen": "4.3.2",
"@ionic-native/status-bar": "4.3.2",
"@ionic-native/stripe": "^4.5.2",
"@ionic-๋ค์ดํฐ๋ธ/์ ์ก": "^3.14.0",
"@ionic/storage": "^2.1.3",
"angular2-moment": "^1.7.0",
"์ฝ๋ฅด๋๋ฐ ์๋๋ก์ด๋": "6.3.0",
"์ฝ๋ฅด๋๋ฐ ๋ธ๋ผ์ฐ์ ": "~5.0.1",
"์ฝ๋ฅด๋๋ฐ ํ๋ฌ๊ทธ์ธ ์นด๋ฉ๋ผ": "^3.0.0",
"์ฝ๋ฅด๋๋ฐ ํ๋ฌ๊ทธ์ธ ์ฅ์น": "^1.1.4",
"cordova-plugin-facebook4": "^1.9.1",
"์ฝ๋ฅด๋๋ฐ ํ๋ฌ๊ทธ์ธ ํ์ผ": "^5.0.0",
"cordova-plugin-file-transfer": "^1.7.0",
"์ฝ๋ฅด๋๋ฐ ํ๋ฌ๊ทธ์ธ ํ์ผ ๊ฒฝ๋ก": "^1.1.0",
"cordova-plugin-geolocation": "^3.0.0",
"cordova-plugin-googlemaps": "^2.1.1",
"cordova-plugin-inappbrowser": "~1.7.2",
"cordova-plugin-ionic-webview": "^1.1.11",
"cordova-plugin-nativestorage": "^2.2.2",
"cordova-plugin-network-information": "^1.3.4",
"cordova-plugin-splashscreen": "^4.0.3",
"์ฝ๋ฅด๋๋ฐ ํ๋ฌ๊ทธ์ธ ์คํธ๋ผ์ดํ": "^1.5.3",
"cordova-plugin-whitelist": "^1.3.1",
"cordova-sqlite-storage": "^2.1.2",
"cordova.plugins.diagnostic": "^3.7.2",
"ํฅ์๋ ํด๊ฒฐ": "^3.4.1",
"์ด์จ ๊ฐ๋": "3.9.2",
"์ด์จ-ํ๋ฌ๊ทธ์ธ-ํค๋ณด๋": "^2.2.1",
"ionic2-๋ฑ๊ธ": "^1.2.2",
"์ด์ค๋์์ฝ": "3.0.0",
"onesignal-cordova-plugin": "^2.2.4",
"rxjs": "5.5.2",
"sw-toolbox": "3.6.0",
"zone.js": "0.8.18"
},
"devDependencies": {
"@ionic/app-scripts": "^3.1.7",
"ํ์ดํ์คํฌ๋ฆฝํธ": "2.4.2"
},
"์ค๋ช
": "Ionic ํ๋ก์ ํธ",
"์ฝ๋ฅด๋๋ฐ": {
"ํ๋ฌ๊ทธ์ธ": {
"cordova-plugin-device": {},
"cordova-plugin-ionic-webview": {},
"cordova-plugin-splashscreen": {},
"cordova-plugin-whitelist": {},
"์ด์จ-ํ๋ฌ๊ทธ์ธ-ํค๋ณด๋": {},
"cordova-plugin-facebook4": {
"APP_ID": "xxxxxxxxxxxx",
"APP_NAME": "LENDZ"
},
"cordova-plugin-nativestorage": {},
"cordova-sqlite-storage": {},
"์ฝ๋ฅด๋๋ฐ ํ๋ฌ๊ทธ์ธ ์นด๋ฉ๋ผ": {},
"์ฝ๋ฅด๋๋ฐ ํ๋ฌ๊ทธ์ธ ํ์ผ": {},
"cordova-plugin-file-transfer": {},
"cordova-plugin-filepath": {},
"cordova-plugin-googlemaps": {
"API_KEY_FOR_ANDROID": "xxxxxxxxxxxxxxxxxxxxxx",
"API_KEY_FOR_IOS": "xxxxxxxxxxxxxxxxxxxx"
},
"cordova-plugin-geolocation": {},
"onesignal-cordova-plugin": {},
"cordova.plugins.diagnostic": {},
"cordova-plugin-network-information": {},
"cordova-plugin-inappbrowser": {},
"์ฝ๋ฅด๋๋ฐ ํ๋ฌ๊ทธ์ธ ์คํธ๋ผ์ดํ": {}
},
"ํ๋ซํผ": [
"๋ธ๋ผ์ฐ์ ",
"๊ธฐ๊ณ์ ์ธ์กฐ ์ธ๊ฐ"
]
}
}
๋์์ฃผ์ธ์
@cbeaujoin์ด ์ ๋งํ๋ฏ์ด. ์ด๋๋ก ๋๋ฉด ๋ฌธ์ ์์ด AOT๋ก ๋น๋๊ฐ ๋ฉ๋๋ค.
@angular/*:"^4.3.6"
"enhanced-resolve": "3.3.0"
devDependencies
"@angular/cli": "1.2.6"
"typescript": "^2.3.4"
์ ์๊ฒ๋ ํ์ดํ์คํฌ๋ฆฝํธ๊ฐ 2.3.4์ฌ์ผ ํ๋ค๋ ์ ์ ์ถ๊ฐํด์ผ ํ๊ณ , ๋ฌด์๋ณด๋ค๋ ๋น๋ ์๊ฐ์ด ์ฝ 29๋ถ์ด ๊ฑธ๋ฆฌ๊ธฐ ์ ์ ๋น๋ ์๊ฐ์ด ์ฝ 6:35๋ก ํฌ๊ฒ ๋จ์ถ๋์์ต๋๋ค. ๋๋ ํ๋์ ์ด๋๋ก ์์ ๊ฒ์ด๋ค.
[email protected]์ด ํด๊ฒฐํ์ต๋๋ค!
์ด ๋ฌธ์ ๋ ํ๋์ด ์์ด ์๋์ผ๋ก ์ ๊ฒผ์ต๋๋ค.
์ ์ฌํ๊ฑฐ๋ ๊ด๋ จ๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ฉด ์ ๋ฌธ์ ๋ฅผ ์ ์ถํ์ญ์์ค.
์๋ ๋ํ ์ ๊ธ ์ ์ฑ ์ ๋ํด ์์ธํ ์์๋ณด์ธ์.
_์ด ์์ ์ ๋ด์ ์ํด ์๋์ผ๋ก ์ํ๋์์ต๋๋ค._
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
๋๋ ๊ฐ์ ๋ฌธ์ ๋ฅผ ๋ฐ๊ฒฌํ๊ณ
npm i [email protected]
ํ์ AOT๋ก ๋น๋ํ ์ ์์ต๋๋ค.