๋ฌธ์ ์ค๋ช
Ivy๋ก ์ปดํ์ผ ํ ๋ ๋ค์ ์ค๋ฅ์ ํจ๊ป ์ปดํ์ผ์ด ์คํจํฉ๋๋ค.
ERROR in src/app/app.module.ts(8,12): error TS-991010: Value at position 1 in the NgModule.importss of AppModule is not a reference: [object Object]
์ฌํ ๋จ๊ณ ๋ฐ ๋ฌธ์ ์ ์ต์ ๋ฐ๋ชจ
์ปดํ์ผ๋ฌ ์คํจ๋ฅผ ๋ณด์ฌ ์ฃผ๋ ค๋ ์๋์ด๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ์ํด stackblitz ๋๋ plunker๋ฅผ ๋ง๋ค ์ ์์๊ณ ์ด๊ฒ์ ์์ฐํ๋ ๋ฐฉ๋ฒ์ ๋ชจ๋ฆ
๋๋ค.
https://github.com/paullessing/agm-ivy-demo ๋ฅผ ํ์ธํ๊ณ yarn install
์คํ ํ ๋น๋๋ฅผ ์๋ ํ ์ ์์ต๋๋ค.
ng new
์ฌ์ฉํ์ฌ Angular 8์ ์ ํ๋ก์ ํธ ์ค์น@agm/core
๋ฐ ๊ธฐ๋ณธ ๊ฐ์ ธ ์ค๊ธฐ ์ค์
imports: [
BrowserModule,
AgmCoreModule.forRoot({
apiKey: environment.mapsApiKey,
})
]
tsconfig.app.json
์์ Ivy ํ์ฑํ :
{
...
"angularCompilerOptions": {
"enableIvy": true
}
}
angular.json
์์ AOT๋ฅผ ํ์ฑํํ์ฌ " ์ง์ฐ ๊ฒฝ๋ก๋ฅผ ์ฐพ์ ์ ์์ "์ ํด๊ฒฐํฉ๋๋ค.
{
"projects": {
"my-project": {
"architect": {
"build": {
"options": {
...
"aot": true,
}
}
}
}
}
}
ng serve
ํ์ฌ ํ๋
์ค๋ฅ์ ํจ๊ป ์ปดํ์ผ ์คํจ :
ERROR in src/app/app.module.ts(8,12): error TS-991010: Value at position 1 in the NgModule.importss of AppModule is not a reference: [object Object]
( imports
๋ฐฐ์ด์ ์์น 1์ AgmCoreModule.forRoot()
)
์์ / ์ํ๋ ํ๋
์ปดํ์ผ๋ฌ ์ค๋ฅ ์์
angular2 ๋ฐ angular-google-maps ๋ฒ์
"@agm/core": "1.0.0-beta.5",
Angular CLI: 8.0.1
Node: 10.16.0
OS: win32 x64
Angular: 8.0.0
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router
Package Version
-----------------------------------------------------------
@angular-devkit/architect 0.800.1
@angular-devkit/build-angular 0.800.1
@angular-devkit/build-optimizer 0.800.1
@angular-devkit/build-webpack 0.800.1
@angular-devkit/core 8.0.1
@angular-devkit/schematics 8.0.1
@angular/cli 8.0.1
@ngtools/webpack 8.0.1
@schematics/angular 8.0.1
@schematics/update 0.800.1
rxjs 6.4.0
typescript 3.4.5
webpack 4.30.0
๊ธฐํ ์ ๋ณด
Ivy๊ฐ ๋นํ์ฑํ๋๋ฉด ์ปดํ์ผ์ด ์๋ํฉ๋๋ค.
package.json
์ types
๋๋ typings
์์ฑ์ด ํฌํจ๋์ง ์์ ๊ฒฝ์ฐ https://github.com/angular/angular/issues/28603 ๊ณผ ๊ด๋ จ ๋ ์ ์์ต๋๋ค ๋ชจ๋์ ์ปดํ์ผ์์ ์ ์ธ๋ฉ๋๋ค.
์ฌํ ํ ์ ์์ต๋๋ค. importss
์ 's'๊ฐ ๋ ๊ฐ์์ ์ ์์ต๋๊น?
์ฌํ ํ ์ ์์ต๋๋ค. ์์ ํ์ ๋ ๊ฐ์ 's'๊ฐ์์ ์ ์์ต๋๊น?
์ด๋ฆ์ด imports
์ธ ๋ฐฐ์ด์ด๊ธฐ ๋๋ฌธ์ ์ค๋ฅ ๋ฉ์์ง๊ฐ ๋ณต์ํ์ ์๋ํ๊ณ ์๊ธฐ ๋๋ฌธ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค.
์๋ก์ด ํ๋ก์ ํธ๋ก ๋ค์ ์๋ํ์ง๋ง ์ฌ์ ํ ์คํจํฉ๋๋ค (๋ฒ ํ ๋ฒ์ 6). ์์ ์ธ๋ถ ์ ๋ณด๋ฅผ ์ ๋ฐ์ดํธํ์ต๋๋ค.
์ข์, ํด๋ด
ng new my-proj --enable-ivy
cd my-proj
npm install @agm/core
์์
ํ์ AgmCoreModule.forRoot...
์ถ๊ฐ
npm start
์์ ์ค๋ช ์์ ๋งํฌ ํ ๋ฐ๋ชจ ํ๋ก์ ํธ ์์ ์ค์ ๋ก ์ํ ํ ์์ ์ ๋๋ค.
์ฌ๊ธฐ์๋ ๊ฐ์ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
@paullessing @ ramses10 Discord์ ๊ฐ์ ํ์ฌ ๋ ๋ํ์์ผ๋ก ๋ ผ์ ํ ์ ์์ต๋๊น?
@ doom777 ๊ด์ฐฎ์์
build : prod๋ก ์ฌํ
@ doom777 prod ํ๋๊ทธ๋ก ์๋ํด
๋๋ ๋๊ฐ์ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ๋ด ์ฑ์ Paul์ด ๊ณต์ ํ ์์ ์ ์ ์ฌํฉ๋๋ค. ng b --prod
๋ฐ ng b
๋ชจ๋์์ Value at position 1 in the NgModule.importss of AppModule is not a reference: [object Object]
๋ฅผ๋ฐ์ต๋๋ค.
๊ฐ๋ : 8.0.0
@ agm / core : 1.0.0- ๋ฒ ํ .6
์๋
ํ์ธ์, Ivy๊ฐ ํ์ฑํ๋๋ฉด ๋์ผํ ๋ฌธ์ ๊ฐ ๋ฐ์ํฉ๋๋ค.
src / app / app.module.ts (37,12) ์ค๋ฅ : ์ค๋ฅ TS-991010 : AppModule์ NgModule.importss ์์น 16์์๋ ๊ฐ์ด ์ฐธ์กฐ๊ฐ ์๋๋๋ค : [object Object]
์์ด๋น๊ฐ ๋นํ์ฑํ๋์์ ๋ ์๋
๋ฌธ์ ๋ฅผ ์ดํด๋ด์ผ๋ก์จ angular ๋ฐ angular-cli ํจํค์ง์์ 2 ๊ฐ์ ๊ด๋ จ ๋ฌธ์ ๋ฅผ ๋ฐ๊ฒฌํ์ต๋๋ค.
์ค๋ฅ๋ node_module
์ธ๋ถ์ ์๊ณ path-mapping
์ฌ์ฉํ์ฌ ์ฌ์ฉํ ์์๋ librairy์์ ๋ฐ์ํ ๊ฒ ๊ฐ์ต๋๋ค.
๋ค์ ์๊ฒฌ๊ณผ ๋ฌธ์ ๋ฅผ ํ์ธํ์ญ์์ค : https://github.com/angular/angular-cli/issues/14594#issuecomment -497288501
๋ํ์ด ๋ฌธ์ : https://github.com/angular/angular/issues/30945
๋ถํํ๋ ๋๋ ./node_modules/.bin/ivy-ngcc -s ./dist
์ฌ์ฉํ์ฌ ์ฃผ์ (์ฒซ ๋ฒ์งธ ๋งํฌ)์ ์ค๋ช
๋ ๊ธฐ์ ๋ก librairy๊ฐ ์๋ํ๋๋ก ๋ง๋ค ์ ์์ต๋๋ค.
๋๋ ๋ฌด์จ ์ผ์ด ์ผ์ด๋๊ณ ์๋์ง ์ ๋ง๋ก ์ดํดํ์ง ๋ชปํ์ง๋ง ์๋ง๋ ๋์์ด ๋ ์ ์์ต๋๋ค.
ํ , ์๋ง๋ # 1648์ ๊ตฌํ ํ ํ์ ์๋ ํ ๊ฒ์ ๋๋ค. lib์์ ๊ฒฝ๋ก ๋งํฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์์ง ๋ชปํ์ง๋ง ํน์ดํ ํจํน์ ์ฌ์ฉํฉ๋๋ค.
์ด ๋ฌธ์ ์ ๋ํ ์ ๋ฐ์ดํธ๊ฐ ์์ต๋๊น?
์ต์ ์ต๊ทค๋ฌ ๋ฒ ํ ๋ฐ ์์ด๋น๋ฅผ ์ฌ์ฉํ ๋๋ ๋์ผํ ๋ฌธ์
ํ ์คํธ ํ # 1634๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ฏ๋ก ์ค๋๋ ๋น๋ ์์คํ ์ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. @SebastianM ์ด PR์ ๊ฒํ ํ๊ณ ๋ณํฉ ํ ์ ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
์ด๊ฒ์ ๋ํ ์ ๋ฐ์ดํธ๊ฐ ์์ต๋๊น?
๋ค, ์ ๋ # 1634์ ์ ์์๊ฒ ๊ทธ์ PR์ ์ ๋ฐ์ดํธํ์ฌ ์ฐ๋ฆฌ๊ฐ ๊ทธ๊ฒ์ ๋ณํฉ ํ ์ ์๋๋กํ๋ ค๊ณ ํฉ๋๋ค. ๋ค์ ์ฃผ์ ํฌ๋งํฉ๋๋ค. ์ง๊ธ๊น์ง๋ ์๋ต์๋ฐ์ ์ ์์ง๋ง, ๊ณ์๋๋ฉด ๊ทธ์ PR์ ๋ณต์ ํ์ฌ ์ง์ ์ฒ๋ฆฌํ๊ฒ ์ต๋๋ค.
@terencehonles https://github.com/SebastianM/angular-google-maps/pull/1634 ์ ๋ฐ์ดํธ ํด ์ฃผ์๊ฒ ์ต๋๊น?
npm์ ๊ฒ์๋์ง ์์์ต๋๊น?
์์ง. ์ฐ๋ฆฌ๋ ๋ชจ๋ ์ปค๋ฐ์ ๊ฒ์ํ์ง ์์ต๋๋ค.
Angular 9 / IVY์ ๋ํ ์ง์์ ์ ๊ณตํ๊ธฐ ๋๋ฌธ์ ๋ฉ์ด์ ๋ก ๊ฐ์ฃผ ๋ ์ ์์ผ๋ฏ๋ก ๊ฒ์ ํด ์ฃผ์๊ฒ ์ต๋๊น?
์์ง. ์ฐ๋ฆฌ๋ ๋ชจ๋ ์ปค๋ฐ์ ๊ฒ์ํ์ง ์์ต๋๋ค.
@ doom777 ์ฃผ์ ์ ๋ฐ์ดํธ์ด๋ฉฐ ์ฃผ์ ์์ ์ฌํญ์ ์๊ฐํ๊ธฐ ๋๋ฌธ์ ๊ฒ์ํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
๋๋ ์ด๊ฒ์ด ์ต๋ํ ๋นจ๋ฆฌ ๋ฆด๋ฆฌ์ค๋์ด์ผํ๋ค๋ ๋ฐ ๋์ํฉ๋๋ค. ์ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ivy์์ ๋น ํธํ์ฑ์ ์ค๊ฐ ๊ท๋ชจ ์น ์ฑ์์ ivy๋ฅผ ํ ์คํธํ์ง ๋ชปํ๊ฒํ๋ ๋ช ๊ฐ์ง ๋ฌธ์ ์ค ํ๋์ ๋๋ค.
@ doom777 ์ด ๋ฒ์ ๋๋ ๋ค์ ๋ฒ์ ์ด ๊ฒ์๋๋์๊ธฐ์ ๊ด๋ จ๋ ์ ๋ฐ์ดํธ๊ฐ ์์ต๋๊น? npm์ ๊ฒ์ํ๋ ๋ฐ ์ด๋ ค์์ด ์์ต๋๊น? ์ด ํจํค์ง์๋ 65,000 ๊ฐ ์ด์์ ๋ค์ด๋ก๋๊ฐ ํฌํจ๋์ด์์ด ์ ๋ฒ์ ์ ํํ์ ๋๋ฆด ์ ์์ต๋๋ค.
https://docs.npmjs.com/creating-and-publishing-scoped-public-packages ์ฌ๊ธฐ๋ฅผ ์ฝ์ผ๋ฉด publidhing์ด ๋น ๋ฅด๊ณ ์ฌ์ด ๊ณผ์ ์ด์ด์ผ ํจ์ ์ดํดํฉ๋๋ค. ์๋๋ฉด ๋ญ๊ฐ ๋น ์ก์ต๋๊น? :)
๊ฐ์ฌ
@ doom777 ์ ๋ฐ์ดํธ๊ฐ ์์ต๋๊น?
์๋
๋ชจ๋๋ค. ์ฌ๋ฌ๋ถ ์ค ์ผ๋ถ๋์ด ํฝ์ค๊ฐ ์ถ์๋๊ธฐ๋ฅผ ์ผ๋ คํ๊ณ ์๋ค๋ ๊ฒ์ ์๊ณ ์์ง๋ง (1) ์๋ก์ด agm ๋ฒ์ ์ถ์๋ฅผ ๋ด๋นํ์ง ์์ต๋๋ค. (2) ์ฐ๋ฆฌ๋ ์๋นํ ์ต๊ทผ์ ์ถ์ํ์ต๋๋ค. (3) Ivy๋ ์์ง ํ๋ฆฌ๋ทฐ ์ค์
๋๋ค. ์ง์์ ํด์ ํ๋ ๊ฒ์ด ์ค์ํ์ง๋ง PRIORITY 0 CRITICAL ์ด ์๋๋๋ค.
์ ๋ฒ์ ์ถ์์ ๋ํด @SebastianM ์๊ฒ ๋ฉ์์ง๋ฅผ
์ ๋ฐ์ดํธ ๋ฐ ์ ๋ณด์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.
์, Ivy๋ ๋ฏธ๋ฆฌ ๋ณด๊ธฐ๋ก ๋ง ์ ๊ณต๋์ง๋ง ์ค๋๋ ์๋ ์ด๋ฏธ ๋ง์ ๊ฐ๋ฐ์๋ฅผ ๋์ธ ์ ์์ต๋๋ค.
npm์ 24 ์๊ฐ๋ง๋ค ๋ฆด๋ฆฌ์ค ํ ์ ์์ผ๋ฏ๋ก ์ต๊ทผ ๋ฆด๋ฆฌ์ค๋ ๋ฌธ์ ๊ฐ๋์ง ์์ต๋๋ค.)
@SebastianM ์ด ๊ณง ์ ๋ฆด๋ฆฌ์ค๋ฅผ ๊ณ ๋ คํ ์ ์๊ธฐ๋ฅผ
๊ฐ์ฌ
@ doom777 PRIORITY 0 CRITIAL์ ์๋์ง๋ง ๋งค์ฐ ์ค์ํฉ๋๋ค.
Angular๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์์ด๋น๋ฅผ ํ์ฑํํ๋ v9.0.0์ ์ถ์ ํ ์์ ์ด๋ฉฐ์ด ํจํค์ง๋์ด ๋ฒ์ ์์ ์ธ๋ชจ๊ฐ ์์ต๋๋ค. PR์ด ์์ ํ๋ค๋ฉด ์ ์ ๋ฒ์ ์ ์ถ์ํ์ง ์๋์ง ์ ์ ์์ต๋๋ค.
๋ํ์ด ํจํค์ง๊ฐ ์์ง ๋ฒ ํ ๋ฒ์ ์ธ ์ด์ ๊ฐ ์์ต๋๋ค. ์ฌ๊ธฐ์๋ ์ ์๋ํ๊ณ ๋ฒ๊ทธ๋ ๋ถ์์ ํ์ง๋ ์์ต๋๋ค.
๋ด๊ฐ ์ ์ถ ํ PR (# 1634)์ ํ๋์ ์ฌ์ฉ ๋ AOT ์ปดํ์ผ (Angular 4+?)์ ๋ค๋ฃจ๊ธฐ์ํ ๊ฒ์ด ์์ผ๋ฉฐ, ์ด๊ฒ์ด ์๋ก์ด ๋ฒ ํ ๋ฆด๋ฆฌ์ค๋ฅผ ์ถ์ํ๋ ์ข์ ์ด์ ๊ฐ ๋ ๊ฒ์ ๋๋ค.
# 1647๊ณผ ๊ด๋ จํ์ฌ : Ivy๋ AOT๊ฐ ํ์ํ๋ฏ๋ก Ivy์์ ์ค๋จ ๋ ์ ์์ง๋ง ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋ํด Ivy์ ์์ ํ ํธํ๋๋๋ก ๋ณ๊ฒฝํด์ผํ๋ ๋ค๋ฅธ ์ฌํญ์ด์์ ์ ์์ต๋๋ค.
์ง์ฅ์์ Ivy๋ก ์์ฉ ํ๋ก๊ทธ๋จ์ ๊ตฌ์ถํ๋ ์คํ์ ์์ํ๊ณ ์์ง๋ง ๋ฌธ์ ๊ฐ์๋ ๊ฒ์ผ๋ก ๋ณด์ด๋ ๋ค๋ฅธ ํจํค์ง๊ฐ ์์ผ๋ฉฐ Ivy๋ก ์ ๊ทธ๋ ์ด๋ํ๋ ๊ฒ์ ์์ฉ ํ๋ก๊ทธ๋จ์ ํต์ฌ ์๊ตฌ ์ฌํญ์ด ์๋๋๋ค. ํ ์คํธ ํ ์๊ฐ์ด ๋ ๋ง๊ณ ์ ์ฌ์ ์ผ๋ก ๋ ๋ง์ ๋งคํ ๊ธฐ๋ฅ์ ์ถ๊ฐ ํ ์ ์์ผ๋ฏ๋ก ํ์ํ ๋ณ๊ฒฝ ์ฌํญ์ ๊ธฐ์ฌํ ์ ์์ง๋ง์ด ํ๋ก์ ํธ๋ฅผ ์ง์ํ๋ ๋ฐ ์ผ๋ง๋ ๋ง์ ์๊ฐ์ด ํ์ํ์ง์ ๋ํด์๋ ์ฝ์ ํ ์ ์์ต๋๋ค.
@ iget-master ๋๋ ๋ํ ๋ฒ๊ทธ๊ฐ์๊ณ ๋ถ์์ ์ฑ์ด ์๋ค๊ณ ๋งํ๋ ๋ฐ๊น์ง ๊ฐ์ง ์์ ๊ฒ์ ๋๋ค (๋ด๊ฐ ์ด๋ค ๋ฌธ์ ๋ฅผ ๊ฒช์ ๊ฒ์ ์๋์ง๋ง ์์ฃผ ์ ๋ฌธ์ ๊ฐ์์ ์ ์์ผ๋ฉฐ "๋ฒ ํ"ํ๊ทธ๋ฅผ ์ ์งํ๋ฉด ๋ฐ๋ณต์ด ๋ ์ฌ์์ง๊ณ ๋ณด๋ค ์์ ์ ์ธ API๋ฅผ ๊ฐ๊ธฐ ์ ์ ๋ณ๊ฒฝํด์ผ ํ ์ฌํญ ๋ณ๊ฒฝ)
์ฐ์ ์์๊ฐ ์๋ ๊ฒ์ฒ๋ผ ๊ธฐ์ฌ์๋ก๋ถํฐ ์๋ต์๋ฐ์ต๋๋ค. AOT ๋ฐ Ivy ์ง์์ ์์ ํ๊ธฐ ์ํด ์ด๊ฒ์ ๋ฆด๋ฆฌ์คํ๋ ๊ฒ์ด ๋ค์ ์ค์ํ๋ค๊ณ ์ฃผ์ฅ ํ ์ ์์ต๋๋ค. AOT๋ ํ๋์ ์์๊ณ ๋ช ๋ฌ ํ์ Angular 9๋ (์์ ๋) ์์ ์ ์ธ ์์ด๋น์ ํจ๊ป์์ ๊ฒ์ ๋๋ค. ๊ฐ์ธ์ ์ผ๋ก ๋๋ ๊ทธ๊ฒ์ด ์ ํํ 0 ์ฐ์ ์์๋ผ๊ณ ์ฃผ์ฅ ํ ์ด์ ๊ฐ ์๋ค๊ณ ์๊ฐํฉ๋๋ค.
๋์งธ, ๋ช ๋ น์ ์คํํ๊ณ npm์ ๋ฆด๋ฆฌ์คํ๋ ๋ฌธ์ ๋ ๋ฌด์์ ๋๊น?
๊ธฐ์ฌ์๊ฐ ์์ง ์์ ์ ์ด์ง ์์ ์ ์๋ค๊ณ ์ฃผ์ฅํฉ๋๋ค.์ด ๊ฒฝ์ฐ ๋ฒ ํ ํ๋๊ทธ๋ฅผ ์ ์งํ๋ ๊ฒ์ด ํฉ๋ฆฌ์ ์ ๋๋ค. ๊ทธ๋ฌ๋! ๋ฒ ํ๊ฐ ๋ค์ ๋ถ์์ ํ ๊ฒ์ผ๋ก ๊ฐ์ ํ์ง ์์ต๋๊น? ์ด๋ ์ฆ์ ๋ฆด๋ฆฌ์ค๊ฐ ์์๋์ง๋ง ์ฐ๋ฆฌ๊ฐ ๋ณด๋ ๊ฒ์ ๊ฑฐ์ ํ ๋ฌ์ ํ ๋ฆด๋ฆฌ์ค๋ผ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. ๋ถ์์ ์ฑ์ ๋ํ ์ฐ๋ ค๊ฐ ํฐ ๊ฒฝ์ฐ ํ์ฌ ๋ฒ์ ์ ์์ ์ ์ธ ๋ฒ์ ์ผ๋ก ์ถ์ํ๊ณ ๋ฒ ํ ํ๋๊ทธ๋ก Ivy๋ฅผ ์์ ํ๋ ๋ฒ์ ์ ์ถ์ํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋งค์ฃผ ~ 6 ๋ง ๋ช ์ ์ฌ๋๋ค์ด ์๋ก์ด ๋ฒ์ ์ ํํ์ ๋๋ฆด ์ ์์์ ๊ธฐ์ตํ์ญ์์ค.)
๊ฐ์ฌ
์ด repo๋ฅผ ์ ํํ๊ฒ ๋ณต์ฌํ๊ณ ๋ค๋ฅธ ์ด๋ฆ์ผ๋ก npm์ ๊ณต๊ฐ ํ ์๊ฐ์ด๋ฏ๋ก์ด ์ค๋ ๋๋ฅผ ๋ณด๋ ๋ชจ๋ ์ฌ๋์ด ๋ฐ๋ผ ์ก์ ๋๊น์ง ์๋ํด ๋ณผ ์ ์์ต๋๋ค. ์ด ์ผ์ ์๊ฐํ๋ ์ฌ๋์ด ์์ต๋๊น?
๋๋ ~ ์์์๋ค.
์ฐ๋ฆฌ๋ ๋น์ ์ด ์ฐ๋ฆฌ์ lib๋ฅผ ํฌํฌํ๊ณ ๋ฐฐํฌํ๋ ๊ฒ์ ๋ฐ๋ํ์ง ์์ต๋๋ค. ๊ทธ๊ฒ์ด ์คํ ์์ค ์ธ ์ด์ ์
๋๋ค. ๐
๋๋ ๊ทธ๊ฒ์ ๊บผ๋ด๋ ค๊ณ ๋
ธ๋ ฅํ๊ณ ์์ง๋ง '๋ช
๋ น ์คํ'๋งํผ ์ฝ์ง๋ ์์ต๋๋ค. Angular 9 ์ด์ ์ beta.8์ด ์ถ์ ๋ ๊ฒ์ผ๋ก ์์ํฉ๋๋ค.
๋ด๊ฐ ์ด๋ป๊ฒ ๋์์ด ๋ ์ ์์ต๋๋ค? ํ ์คํธ ๋๋ ๊ฐ๋ฐ์ด ํ์ํ ๊ธฐ๋ฅ์ด ์์ต๋๊น?
@mruknowme ์ ๋ฐ ๊ทธ๋ ๊ฒํ์ง ๋ง์ญ์์ค.
@ doom777 ์์ด ์ ์ฅ์์ ๋ ๋ง์ ๊ฒฌ์ธ๋ ฅ์ด ์๊ธฐ ์ ์ ๊ทธ๋ ๊ฒํ๊ธฐ ์์ํ์ต๋๋ค. ๊ทธ๋ ๊ณต์ ์์ง์ด๊ฒํ๊ธฐ ์ํด ๋ง์ ์ผ์ ํด์๊ณ ๋๋ ๋น์ ์ด ์๋์ ๋ง์กฑํ์ง ์๋๋ค๋ ๊ฒ์ ์ดํดํฉ๋๋ค.ํ์ง๋ง ๊ทธ๊ฒ์ _ ๋ ๋์์ก๊ณ _ ํฌํฌ๋ ์ฐ๋ฆฌ ๋ชจ๋๊ฐ ์ผ์ ๋ ๋นจ๋ฆฌ ๋ง๋ค๊ธฐ ์ํด ํจ๊ป ์ผํ๊ฒํ๋ ๊ฒ๋ณด๋ค ์ฌ๋๋ค์ ํผ๋์ค๋ฝ๊ฒ ํ ๋ฟ์ ๋๋ค.
์ ๋ฐ์ดํธ :์ด ๋ฆด๋ฆฌ์ค๋ฅผ ์ป์ผ๋ ค๊ณ ํฉ๋๋ค. ๋ถํํ๋ Sebastian์ ์ฐ๊ฒฐํ ์ ์์ผ๋ฉฐ npm ๋ฐฐํฌ ๋ง ์ํ ํ ์ ์์ต๋๋ค.
์ผ,
์ด ์ค์ ์ฐ์ฐํ ๋ณด์๋ค. @Ephraim ์ด๋๋ก ๋ฉ์์ง๋ฅผ ๋ณด๋์ต๋๊น?
๋ด ํธ์ ์ค์ ์ด ์๋ง์ด ๋ ์๋ ์์ต๋๋ค ๐ ๋ด๊ฐ ํ ๋ ์ ๋ฒ์ ์ ํธ์ ํ ์ ์์ต๋๋ค
์ง. ์ง์ฐ ๋ผ์ ์ฃ์กํฉ๋๋ค!
Ephraim Khantsis [email protected] schrieb am Mo. 2019 ๋
9 ์ 16 ์ผ um
17:06 :
์ ๋ฐ์ดํธ :์ด ๋ฆด๋ฆฌ์ค๋ฅผ ์๋ํ๊ณ ์์ต๋๋ค. ๋ถํํ๋ Sebastian์
๋๋ฌ ํ ์์๊ณ ์ค์ง ๊ทธ๊ฐ npm ๋ฐฐํฌ๋ฅผ ํ ์ ์์ต๋๋ค.โ
๋น์ ์ด ์ธ๊ธ ๋์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ฐ๊ณ ์์ต๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub์์ ํ์ธํ์ธ์.
https://github.com/SebastianM/angular-google-maps/issues/1647?email_source=notifications&email_token=AACDGRABQG3CO4VBHKU3N23QJ6OHZA5CNFSM4HSA7KD2YY3PNVWWK3TUL52HS4DFVRWEXG43181ZLOJKTissue5ZNMV181Z53965Bissue5ZNMV6Z53965Zissue
๋๋ ์ค๋ ๋ ์์๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AACDGRFLFLAZMJKKVQZUM7DQJ6OHZANCNFSM4HSA7KDQ
.
์๋ ํ์ธ์ @SebastianM ,
์ฃ์กํฉ๋๋ค. ๋ด๊ฐ ๋ฉ์์ง๋ฅผ ๋ณด๋ธ ๊ฒ์ ๊ธฐ์ตํ ์ ์์ต๋๋ค!
์ ๋ด๊ฐ ๋น์ ์๊ฒ ๋ฉ์์ง๋ฅผ ๋ณด๋ด์ผํฉ๋๊น?
๊ฑด๋ฐฐ,
์๋ธ๋ผ์
@SebastianM @ doom777 ๋๊ธ https://github.com/SebastianM/angular-google-maps/issues/1647#issuecomment -524882295๋ฅผ ์ฐธ์กฐํ๊ณ ์์ต๋๊น?
BTW ๋๋ ๋ํ ๋น์ ์๊ฒ ํธ์ํฐ์ ๋ฉ์์ง๋ฅผ ๋จ์ด ๋จ๋ ธ๋ค : D
์ฐ๋ฆฌ ๋ชจ๋๋ ๋น์ ์ด ๋ฐ์๋ค๋ ๊ฒ์ ์ดํดํ๊ณ ์ด ํ๋ฌ๊ทธ์ธ์ ์ ์งํ๊ธฐ์ํ ์๊ฐ๊ณผ ๋ ธ๋ ฅ์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค. :)
์ผ! ์ ์ฃผ์ ์ ๊ธฐ๋ป์. ๋๋ ํญ์ ํธ์ํฐ์์ ๋น์ ์๊ฒ ์ฐ๋ฝํ๋ ค๊ณ ๋ ธ๋ ฅํฉ๋๋ค.
@SebastianM ์ด๋ฏธ ์ฌ์ฉ ๊ฐ๋ฅํ ๊ฒฝ์ฐ ์ต์ AGM ๋ฒ์ ์ ์ฌ์ฉํ๋๋ก stackblitz ํ ํ๋ฆฟ์ ์ ๋ฐ์ดํธ ํ ์ ์์ต๋๊น?
๊ทธ๋, ๊ทธ๋
Am Mo., 16. Sept. 2019 um 20:20 Uhr schrieb Ephraim Khantsis <
[email protected]> :
@SebastianM https://github.com/SebastianM ์ด๋ฏธ ์ฌ์ฉ ๊ฐ๋ฅํ ๊ฒฝ์ฐ,
์ต์ AGM ๋ฒ์ ์ ์ฌ์ฉํ๋๋ก stackblitz ํ ํ๋ฆฟ์ ์ ๋ฐ์ดํธ ํ ์ ์์ต๋๊น?โ
๋น์ ์ด ์ธ๊ธ ๋์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ฐ๊ณ ์์ต๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub์์ ํ์ธํ์ธ์.
https://github.com/SebastianM/angular-google-maps/issues/1647?email_source=notifications&email_token=AACDGRDKLMG7VFW7CP6KVYDQJ7E5PA5CNFSM4HSA7KD2YY3PNVWWK3TUL52HS4DFVRWEXG43896BLOBW63WSLissueMV531ZLODQ334DFVRWEXG43V531BLOBW63W
๋๋ ์ค๋ ๋ ์์๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AACDGRA3WT7CYHW3JSZEMC3QJ7E5PANCNFSM4HSA7KDQ
.
@SebastianM @agm/core 1.0.0
์ (๋) Angular 9.0.0-next.6
์์ ์ ์๋ํ์ง๋ง Angular 9.0.0-next.7
์์๋์ด ์ค๋ฅ๊ฐ ๋ค์ ๋ฐ์ํ๊ธฐ ์์ํ์ต๋๋ค. https://github.com/angular/angular/issues/32506
์ข ๋ด์ฃผ ์๊ฒ ์ด์?
๋ฐฉ๊ธ ์ด๊ฒ์ ์ดํด๋ณด๋ฉด @agm/core
1.0.0์๋ ๋์๊ฒ ์ด์ํ ๋ฐฉ์์ผ๋ก ํํ ๋ ๋ฐ์ฝ๋ ์ดํฐ๊ฐ์๋ ๋ฒ๋ค์ด ์์ต๋๋ค. ๋๋ ๊ทธ๊ฒ์ ์กฐ์ฌํ๊ณ ์๋ค.
๊ฐ์ฌํฉ๋๋ค @JoostK , ๊ณง ์์ ์ ๊ธฐ๋ํฉ๋๋ค :)
๊ทธ๋์ ng-packagr 5.5.1์์ ๋ฆด๋ฆฌ์ค ๋ https://github.com/ng-packagr/ng-packagr/pull/1401 ์ดํ๋ก ngcc๊ฐ ๋ฐ์ฝ๋ ์ดํฐ๊ฐ ๋ฐฉ์ถ๋๋ ๋ฐฉ์์ ์ฒ๋ฆฌ ํ ์ โโ์์์ ํ์ธํ ์์์์ต๋๋ค.
๊ทธ๋ฌ๋์ด ์ ์ฅ์์ yarn.lock
ํ์ผ์ ng-packagr 5.4.3์ด ์ฌ์ฉ ์ค์์ ์์ํ๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ์ฌ์ ํ โโ๋๋์ต๋๋ค. @SebastianM yarn.lock
ํ์ผ์ ์
๋ฐ์ดํธํ์ง ์๊ณ ng-packagr์ ์ต์ ๋ฆด๋ฆฌ์ค๊ฐ ๊ฒ์์ ์ฌ์ฉ๋์๋์ง ์ฌ๋ถ๋ฅผ ํ์ธํ ์ ์์ต๋๊น?
์๋์, 5.4.3์์ ์ฌ์ฉ๋์์ต๋๋ค.
์ ๋ฐ์ดํธ : 5.5.1๋ก ์๋ํด๋ ๋์์ด๋์ง ์์ต๋๋ค.
๋ค์์ @agm/core
1.0.0์ ๋ฐ์ฝ๋ ์ดํฐ๊ฐ ์กด์ฌํ๋ ๋ฐฉ์์ ๋ค๋ฃจ๋ PR์
๋๋ค. https://github.com/angular/angular/pull/32901
@ doom777 ์ด๋ป๊ฒ ์ ์ ์์ต๋๊น? ๋น์ ์ด ๋ฆด๋ฆฌ์ค๋ฅผ ๊ฒ์ ํ ์ฌ๋ ์ด์์ต๋๊น? @agm/core
์ 1.0.0 ๋ฆด๋ฆฌ์ค๊ฐ ng-packagr 5.5.1์ด ์๋ ๋ค๋ฅธ ๊ฒ์ผ๋ก ๋น๋ ๋ ๊ฒฝ์ฐ ctorParameters
๋ฐ __decorate
ํธ์ถ์ ๋ชจ๋ ๊ฐ์ง ์์๋ ๋ฐฉ๋ฒ์ ์ดํดํ์ง ๋ชปํฉ๋๋ค
ํ๋ฌ๊ทธ์ธ์ Angular 9.0.0-next.9์์ ์๋ฒฝํ๊ฒ ์๋ํฉ๋๋ค. ๋ฉ์ง ์์ ์ ๋ํด @JoostK ์๊ฒ ๊ฐ์ฌ๋๋ฆฝ๋๋ค :)
๋๋ ๋ง์นจ๋ด @ angular / google-maps๋ก ์ ํํ์ฌ ์ง๊ธ๊น์ง ํ๋ฅญํ๊ฒ ์๋ํ์ต๋๋ค. :)
๊ทธ๋ ํ์ด์ ๋น์ด. ํจ์ฌ ์ ์ ๊ธฐ๋ฅ์ด ์์์ ๋ช ์ฌํ์ญ์์ค.
์ถ๊ฐํ์๋ฉด, 8.0์์๋ ์ต๊ทค๋ฌ ์์ด๋น์ ํธํ๋๋ ๋ฐ ๋งค์ฐ ์ด๋ ค์์ ๊ฒช๊ณ ์์ง๋ง 9.0์์๋ ์ ์๋ํฉ๋๋ค.
"@angular/core": "~9.1.0",
๋ด๊ฐ ์ถ๊ฐ ํ ๋ forRoot
๊ธฐ๋ฅ ๋ชจ๋๊ณผ์ ์ ํ AppModule->Imports
. ์ด ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค. ํด๊ฒฐ์ฑ
์ ์ฐพ์ ์ ์์ต๋๋ค. ์ค๋ Angular CLI๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ฑ์ ๋ง๋ค์์ต๋๋ค.
"@angular/core": "^9.1.6",
๊ฐ์...
"forRoot๋ฅผ ๊ธฐ๋ฅ ๋ชจ๋์ ์ถ๊ฐํ๊ณ AppModule-> Imports์์ ํธ์ถํ๋ฉด์ด ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค. ์๋ฃจ์
์ ์ฐพ์ ์ ์์ต๋๋ค. ์ค๋ Angular CLI๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ฑ์ ๋ง๋ค์์ต๋๋ค."
๋ง์นจ๋ด ๋ด ์ฌ๊ฑด์ ๋ํ ๋ฌธ์ ๋ฅผ ๋ฐ๊ฒฌํ์ต๋๋ค.
... ๋ชจ๋์์ ...
let registry = null;
export class UiUniversalCoreModule {
public static forRoot(elements): ModuleWithProviders<UiUniversalCoreModule> {
// Angular 9 required <UiUniversalCoreModule>
registry = elements; // and had to change this code to work.
return {
ngModule: UiUniversalCoreModule,
providers: [
ComponentBuilderService
]
};
}
}
... ๋ก ๋ณ๊ฒฝ ...
let registry = null;
function ngModuleIssue(elements){
registry = elements;
return ComponentBuilderService;
}
export class UiUniversalCoreModule {
public static forRoot(elements): ModuleWithProviders<UiUniversalCoreModule> {
return {
ngModule: UiUniversalCoreModule,
providers: [
ngModuleIssue(element)
]
};
}
}
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
๋๋ ์ด๊ฒ์ด ์ต๋ํ ๋นจ๋ฆฌ ๋ฆด๋ฆฌ์ค๋์ด์ผํ๋ค๋ ๋ฐ ๋์ํฉ๋๋ค. ์ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ivy์์ ๋น ํธํ์ฑ์ ์ค๊ฐ ๊ท๋ชจ ์น ์ฑ์์ ivy๋ฅผ ํ ์คํธํ์ง ๋ชปํ๊ฒํ๋ ๋ช ๊ฐ์ง ๋ฌธ์ ์ค ํ๋์ ๋๋ค.