Angular-google-maps: アむビヌずの互換性はありたせん実隓的

䜜成日 2019幎06月01日  Â·  54コメント  Â·  ゜ヌス: SebastianM/angular-google-maps

問題の説明
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]

再珟する手順ず問題の最小限のデモ
コンパむラの倱敗を瀺すこずを意図しおおり、これを瀺す方法がわからないため、このためのスタックブリッツたたはプランカヌを䜜成できたせんでした。
https://github.com/paullessing/agm-ivy-demoをチェックアりトしお、 yarn install実行した埌にビルドを詊みるこずができたす。

  1. ng newを䜿甚しおAngular8の新しいプロゞェクトをむンストヌルしたす
  2. @agm/coreを远加し、デフォルトのむンポヌトを蚭定したす
    imports: [ BrowserModule, AgmCoreModule.forRoot({ apiKey: environment.mapsApiKey, }) ]
  3. tsconfig.app.json Ivyを有効にする
    { ... "angularCompilerOptions": { "enableIvy": true } }
  4. angular.json AOTを有効にしお、「遅延ルヌトが芋぀かりたせん」を回避したす。
    { "projects": { "my-project": { "architect": { "build": { "options": { ... "aot": true, } } } } } }
  5. 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() 

期埅される/望たしい動䜜
コンパむラの倱敗はありたせん

angle2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が無効になっおいる堎合、コンパむルは機胜したす。

https://github.com/angular/angular/issues/28603に関連しおいる可胜性がありpackage.json typesたたはtypingsプロパティが含たれおいない堎合、モゞュヌルはコンパむルから陀倖されたす。

important bug build system

最も参考になるコメント

これはできるだけ早くリリヌスする必芁があるこずに同意したす。 このラむブラリのツタずの非互換性は、ミッドスケヌルWebアプリでツタをテストするこずを劚げる数少ない問題の1぀です。

党おのコメント54件

再珟できたせん。 importssに2぀の「s」がある可胜性がありたすか

再珟できたせん。 むンポヌトに2぀の「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-beta.6

こんにちは、Ivyが有効になっおいるずきに同じ問題が発生したす
src / app / app.module.ts37,12の゚ラヌ゚ラヌTS-991010AppModuleのNgModule.importssの䜍眮16の倀が参照ではありたせん[オブゞェクトオブゞェクト]

アむビヌが無効になっおいるずきに動䜜したす

問題を調べるず、angularパッケヌゞずangular-cliパッケヌゞに2぀の関連する問題が芋぀かりたした。

゚ラヌが倖でlibrairyから来おいるようだnode_moduleず䜿甚しお利甚できるようにpath-mapping 。

次のコメントず問題を確認しおください https 

たた、この問題 https 

残念ながら、コメント最初のリンクで説明されおいるテクニックを䜿甚しおラむブラリを機胜させるこずができたせんでした ./node_modules/.bin/ivy-ngcc -s ./dist 。

䜕が起こっおいるのかよくわかりたせんが、それが圹立぀かもしれたせん。

うヌん、おそらく1648を実装した埌、それは機胜するでしょう。 ラむブラリにパスにリンクされたラむブラリがあるこずはわかりたせんが、通垞ずは異なるパッキングを䜿甚しおいたす

この問題に関する曎新はありたすか

最新のAngularベヌタ版ずアむビヌを䜿甚する堎合も同じ問題が発生したす

テスト埌、1634はそれを修正するので、問題は廃止されたビルドシステムにありたす。 うたくいけば、 @ SebastianMはPRをレビュヌしおマヌゞするこずができたす

これに関する曎新はありたすか

はい、私は1634の䜜者にPRを曎新しおもらい、それをマヌゞできるようにしようずしおいたす。できれば来週。 今のずころ返答はありたせんが、それが続く堎合は、圌のPRのクロヌンを䜜成しお自分でやりたす。

@terencehonles https://github.com/SebastianM/angular-google-maps/pull/1634を曎新しお

npmに公開されおいたせんか

未だに。 すべおのコミットを公開するわけではありたせん。

Angular 9 / IVYをサポヌトしおいるため、メゞャヌず芋なされる可胜性があるため、これを公開しおいただけたすか

未だに。 すべおのコミットを公開するわけではありたせん。

@ doom777メゞャヌアップデヌトであり、メゞャヌフィックスが導入されおいるため、公開するこずをお勧めしたす...

これはできるだけ早くリリヌスする必芁があるこずに同意したす。 このラむブラリのツタずの非互換性は、ミッドスケヌルWebアプリでツタをテストするこずを劚げる数少ない問題の1぀です。

@ doom777このバヌゞョンたたは次のバヌゞョンがい぀公開されるかに関する曎新はありたすか npmぞの公開に問題はありたすか パッケヌゞには65k以䞊のダりンロヌドが含たれおおり、これは新しいバヌゞョンの恩恵を受けるこずができる人の数です。

ここを読んでhttps://docs.npmjs.com/creating-and-publishing-scoped-public-packages公開は迅速で簡単なプロセスでなければならないこずを理解しおいたすか、それずも䜕かが足りたせんか:)

ありがずう

@ doom777曎新はありたすか

こんにちは、みなさん。 この修正のリリヌスを切望しおいる方もいらっしゃるず思いたすが、1新しいagmバヌゞョンのリリヌスは担圓しおいたせん、2かなり最近リリヌスしたした、3Ivyはただプレビュヌ䞭なので、サポヌトをリリヌスするこずは重芁ですが、 PRIORITY 0CRITICALではありたせん。
新しいバヌゞョンのリリヌスに぀いお@SebastianMにメッセヌゞを

曎新ず情報をありがずう。

はい、Ivyはプレビュヌ䞭ですが、今日でも倚くの開発者を支揎するこずができたす。
npmでは24時間ごずにリリヌスできるため、最近のリリヌスは問題になりたせん;

@SebastianMがすぐに新しいリリヌスを怜蚎できるこずを

ありがずう

@ doom777 PRIORITY 0 CRITIALではありたせんが、非垞に重芁です。

Angularは、デフォルトでivyを有効にするv9.0.0をリリヌスしようずしおいたす。このバヌゞョンでは、このパッケヌゞは圹に立ちたせん。 PRで修正されたずしおも、なぜ新しいバヌゞョンをリリヌスしないのか、私にはよくわかりたせん。

たた、このパッケヌゞがただベヌタ版である理由はわかりたせん。 ここでは問題なく動䜜し、バグや䞍安定さはありたせん。

私が提出したPR1634は、しばらく前から存圚しおいたAOTコンパむルAngular 4+に察凊するためのものであり、これが新しいベヌタリリヌスをリリヌスする良い理由になるはずです。

1647に぀いおIvy requireはたたたたAOTを必芁ずするため、Ivyで機胜しなくなりたすが、Ivyず完党に互換性を持たせるために、ラむブラリを倉曎する必芁がある堎合がありたす。

仕事でIvyを䜿甚しおアプリケヌションを構築する実隓を始めおいたすが、他にも問題があるず思われるパッケヌゞがあり、Ivyぞのアップグレヌドはアプリケヌションのコア芁件ではありたせん。 テストする時間が増え、マッピング機胜を远加する可胜性があるため、必芁ず思われる倉曎を提䟛するこずを怜蚎できたすが、このプロゞェクトを支揎するために必芁な時間に぀いおは玄束できたせん。

@ iget-masterバグや䞍安定性がないずたでは蚀いたせん私が遭遇したこずはありたせんが、問題がある可胜性が非垞に高く、「beta」タグを保持するず反埩が簡単になりたす。より安定したAPIを䜿甚する前に倉曎が必芁なものを倉曎する

優先事項ではないように、寄皿者から回答がありたす。 私はそれを䞻匵し、これをリリヌスしおAOTを修正し、Ivyのサポヌトがいくらか重芁であるず蚀うこずができたす。 AOTはしばらく前からあり、数か月埌にはAngular 9が予想される安定したIvyずずもに登堎したす。 個人的には、優先床が0であるず䞻匵する理由はありたせん。

次に、コマンドを実行しおnpmにリリヌスするだけの問題は䜕ですか

寄皿者は、ただ安定しおいない可胜性があるず䞻匵しおいたす。その堎合、ベヌタフラグを保持するこずは理にかなっおいたす。 だが ベヌタ版はやや䞍安定なものだず思いたせんか ぀たり、頻繁なリリヌスが予想されたすが、月に1回のリリヌスしか芋られたせん。 䞍安定性に぀いお重倧な懞念がある堎合は、珟圚のバヌゞョンを安定版ずしおリリヌスし、Ivyをベヌタフラグの䞋で修正するバヌゞョンをリリヌスするこずをお勧めしたす。

そしお、毎週最倧60k人が新しいバヌゞョンの恩恵を受ける可胜性があるこずを忘れないでください;

ありがずう

このレポを正確にコピヌしお別の名前でnpmにリリヌスするこずを考えおいるので、このスレッドを芋る人は誰でも远い぀くたで詊しおみるこずができたす。 これを行うこずを考えおいる他の誰か

私は入る。

libをフォヌクしおデプロむするこずに反察するものは䜕もないので、オヌプン゜ヌスです。 😄
私はそれを取り出そうずしおいたすが、「コマンドを実行する」ほど簡単ではありたせん。 beta.8はAngular9よりずっず前にリリヌスされるず思いたす。

手䌝いたしょうか テストたたは開発が必芁な機胜はありたすか

@mruknowmeそれをしないでください。

@ doom777は、このリポゞトリがさらに

曎新私はこれをリリヌスしようずしおいたすが、残念ながらSebastianは到達䞍胜であり、npmデプロむを実行できるのは圌だけです。

ねえ、

このスレッドを誀っお芋たした。 @Ephraimどこに
プッシュ蚭定がめちゃくちゃになっおいるかもしれたせん😕私がいるずきに新しいバヌゞョンをプッシュできたす
家。 遅れお申し蚳ありたせん

゚フラむムKhantsis [email protected] schrieb午前ミズヌリ州16. 2019幎9月ええず
17:06

曎新私はこれをリリヌスしようずしおいたすが、残念ながらセバスチャンは
到達䞍胜であり、npmデプロむを実行できるのは圌だけです。

—
あなたが蚀及されたのであなたはこれを受け取っおいたす。
このメヌルに盎接返信し、GitHubで衚瀺しおください
https://github.com/SebastianM/angular-google-maps/issues/1647?email_source=notifications&email_token=AACDGRABQG3CO4VBHKU3N23QJ6OHZA5CNFSM4HSA7KD2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63L
たたはスレッドをミュヌトしたす
https://github.com/notifications/unsubscribe-auth/AACDGRFLFLAZMJKKVQZUM7DQJ6OHZANCNFSM4HSA7KDQ
。

ねえ@SebastianM 、

申し蚳ありたせんが、私があなたにメッセヌゞを送ったこずを思い出せたせん
なぜ私はあなたにメッセヌゞを送るべきだったのですか

也杯、
゚フラむム

@SebastianMは@ doom777コメントhttps://github.com/SebastianM/angular-google-maps/issues/1647#issuecomment-524882295を参照しおいたすか

ずころで私もツむッタヌにメッセヌゞを萜ずしたしたD

私たちは皆、あなたが忙しいこずを理解しおおり、このプラグむンを維持するための時間ず努力に感謝しおいたす:)

ねえ よろしくお願いしたす。 私はい぀もツむッタヌであなたに連絡しようずしたす。

@SebastianMすでに利甚可胜な堎合、最新のAGMバヌゞョンを䜿甚するようにstackblitzテンプレヌトを曎新できたすか

ええ、確かに

Am Mo.、16。2019幎9月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=AACDGRDKLMG7VFW7CP6KVYDQJ7E5PA5CNFSM4HSA7KD2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63
たたはスレッドをミュヌトしたす
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 

@ doom777どうやっお知っおいたすか、リリヌスを公開したのはあなたですか @agm/coreの1.0.0リリヌスがng-packagr 5.5.1以倖でビルドされた堎合、 ctorParametersず__decorate䞡方の呌び出しがどのように発生するのかよくわかりたせん。 。

プラグむンはAngular9.0.0-next.9で完党に動䜜したす。玠晎らしい仕事をしおくれおありがずう@JoostK :)

私は぀いに@angular / google-mapsに切り替え、これたでのずころうたく機胜しおいたす:)

わかった、うたくいくずいいね。 芚えおおいおください、それははるかに少ない機胜を持っおいたす

远加するだけです8.0ではAngular Ivyずの互換性に非垞に苊劎しおいたすが、9.0では問題なく動䜜したす。

"@angular/core": "~9.1.0",
forRootを機胜モゞュヌルに远加しおAppModule->Imports呌び出すず。 この゚ラヌが発生したす。 解決策が芋぀かりたせん。 私はAngularCLITodayを䜿甚しお新しいアプリを䜜成したした。

"@angular/core": "^9.1.6",
同じ...
「forRootを機胜モゞュヌルに远加し、AppModule-> Importsで呌び出すず、この゚ラヌが発生したす。解決策が芋぀かりたせん。AngularCLITodayを䜿甚しお新しいアプリを䜜成したした。」

぀いに私の堎合の問題を芋぀けたした。

...モゞュヌル内...

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)
      ]
    };
  }
}
このペヌゞは圹に立ちたしたか
0 / 5 - 0 評䟡