関数呼び出しを取り除く方法は、Angular aotコンパイルのデコレータではサポートされていませんか?

アニス・ティサウイ

私がテストしていHighcharts Angular2xラッパーを最初は、Angular CLI(1.6.1)の「ngserve」を使用してChromeでパフォーマンスをプロファイリングすることに問題はありませんでした。次に、事前コンパイルを使用して、それがパフォーマンスにどのように影響するかを確認しました。

したがって、以下を使用します。

ng serve --aot

次のエラーが発生します。

ERROR in Error during template compile of 'AppModule'
  Function calls are not supported in decorators but 'ChartModule' was called.

さて、aotがモジュールのファクトリコードを生成し、どういうわけかテンプレートをVanillaJSに「変換」することを知っています。ここでは少し注意が必要で、ngcが外部ライブラリを必要とするモジュールのファクトリコードを生成する方法を理解できませんでした。

私はこのApp.Module.tsを手に入れました:

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { ChartModule } from 'angular2-highcharts';

import { AppComponent } from './app.component';

declare var require: any;
export function getHighchartsModule() {
  return  require('highcharts');
}

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    ChartModule.forRoot(getHighchartsModule) // This causes the error
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

私のPackage.jsonの依存関係:

"dependencies": {
    "@angular/animations": "^5.0.0",
    "@angular/common": "^5.0.0",
    "@angular/compiler": "^5.0.0",
    "@angular/core": "^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",
    "@angular/router": "^5.0.0",
    "angular2-highcharts": "^0.5.5",
    "core-js": "^2.4.1",
    "rxjs": "^5.5.2",
    "zone.js": "^0.8.14"
  }

私の質問は次のとおりです。前述のコンパイルエラーを回避するためにここでできることはありますか?なぜこれが起こるのか誰かが説明できますか?(オプション)

アニス・ティサウイ

ここでGithubの問題に言及します次の解決策は私のために働いた。

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';

// Angular Highcharts Imports
import {HighchartsStatic} from 'angular2-highcharts/dist/HighchartsService'; 
import { ChartModule } from 'angular2-highcharts';

// Factory Function
export function highchartsFactory() {
  var hc = require('highcharts');
  return hc;
}

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    ChartModule // Import Module Here
  ],
  providers: [ // Provide Service Here
    {
      provide: HighchartsStatic,
      useFactory: highchartsFactory 
    },
  ],
  bootstrap: [AppComponent]
})
export class AppModule { }

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

AppRoutingModule関数呼び出しのテンプレートコンパイル中のエラーはデコレータではサポートされていませんが、RouterdataUrlが呼び出されました

分類Dev

Angular 5:関数呼び出しはデコレータではサポートされていません

分類Dev

'AppRoutingModule'関数式のテンプレートコンパイル中のエラーはデコレータでサポートされていません

分類Dev

Angular6- '関数呼び出しはデコレータでサポートされていません' prodビルドのエラー

分類Dev

ルートファイルでクラスをインスタンス化すると、次のエラーが発生します。関数呼び出しはデコレータでサポートされていません

分類Dev

関数呼び出しはデコレータではサポートされていませんが、「DelonModule」が呼び出されました

分類Dev

関数呼び出しはデコレータではサポートされていませんが、「NgForageModule」が呼び出されました

分類Dev

「呼び出しの結果 'resignFirstResponder()'は使用されていません」という警告を取り除く方法は?

分類Dev

オブジェクト関数呼び出しで評価を取り除く方法

分類Dev

GooglePlayデベロッパーコンソールのサポートされているデバイスにタブレットがありません

分類Dev

intellij機能(...)は、この言語レベルではサポートされていません。コンパイルできません

分類Dev

すでにコンパイルされた要素の$ compileはサポートされていません。それではどうすればよいですか?

分類Dev

Angular2-AOT-関数 'ChartModule'の呼び出し、関数呼び出しはサポートされていません

分類Dev

Angular 8:関数式はデコレータではサポートされていません

分類Dev

ImageMagickはUbuntuのPNGサポートでコンパイルされません

分類Dev

サポートされていないinvokespecialの使用をコンパイルできませんでした

分類Dev

Angular 4AOTコンパイラはミックスインをサポートしていません

分類Dev

R関数呼び出しで、「パラメーターの数が正しくありません。4つあるはずです」というエラーが発生します。関数が正しく呼び出されるようにコードをフォーマットする方法は?

分類Dev

関数式はデコレータではサポートされていません

分類Dev

Angular2SocialLoginModule関数呼び出しの呼び出しはサポートされていません

分類Dev

angle2AoTエラー関数呼び出しはサポートされていません

分類Dev

6.xエラーではデコレータはまだサポートされていません

分類Dev

AngularJS 1.5から1.7にアップグレードすると、「コピーできません!WindowまたはScopeインスタンスのコピーの作成はサポートされていません」とスローされます。

分類Dev

正規表現を使用して行から関数呼び出しを取り除く

分類Dev

POSTのSpringMVCではコンテンツタイプ「application / json」はサポートされていません

分類Dev

Javascriptの「マップ」はIEWebBrowserコントロールでサポートされていませんか?

分類Dev

OpenCV 3.3のコンパイル:C ++ 11はサポートされていません

分類Dev

Android Studioエラー「サポートされていないモジュールが検出されました:次のモジュールではコンパイルはサポートされていません」

分類Dev

Cの「呼び出しはソースと同じ式です」という警告を取り除く方法は?

Related 関連記事

  1. 1

    AppRoutingModule関数呼び出しのテンプレートコンパイル中のエラーはデコレータではサポートされていませんが、RouterdataUrlが呼び出されました

  2. 2

    Angular 5:関数呼び出しはデコレータではサポートされていません

  3. 3

    'AppRoutingModule'関数式のテンプレートコンパイル中のエラーはデコレータでサポートされていません

  4. 4

    Angular6- '関数呼び出しはデコレータでサポートされていません' prodビルドのエラー

  5. 5

    ルートファイルでクラスをインスタンス化すると、次のエラーが発生します。関数呼び出しはデコレータでサポートされていません

  6. 6

    関数呼び出しはデコレータではサポートされていませんが、「DelonModule」が呼び出されました

  7. 7

    関数呼び出しはデコレータではサポートされていませんが、「NgForageModule」が呼び出されました

  8. 8

    「呼び出しの結果 'resignFirstResponder()'は使用されていません」という警告を取り除く方法は?

  9. 9

    オブジェクト関数呼び出しで評価を取り除く方法

  10. 10

    GooglePlayデベロッパーコンソールのサポートされているデバイスにタブレットがありません

  11. 11

    intellij機能(...)は、この言語レベルではサポートされていません。コンパイルできません

  12. 12

    すでにコンパイルされた要素の$ compileはサポートされていません。それではどうすればよいですか?

  13. 13

    Angular2-AOT-関数 'ChartModule'の呼び出し、関数呼び出しはサポートされていません

  14. 14

    Angular 8:関数式はデコレータではサポートされていません

  15. 15

    ImageMagickはUbuntuのPNGサポートでコンパイルされません

  16. 16

    サポートされていないinvokespecialの使用をコンパイルできませんでした

  17. 17

    Angular 4AOTコンパイラはミックスインをサポートしていません

  18. 18

    R関数呼び出しで、「パラメーターの数が正しくありません。4つあるはずです」というエラーが発生します。関数が正しく呼び出されるようにコードをフォーマットする方法は?

  19. 19

    関数式はデコレータではサポートされていません

  20. 20

    Angular2SocialLoginModule関数呼び出しの呼び出しはサポートされていません

  21. 21

    angle2AoTエラー関数呼び出しはサポートされていません

  22. 22

    6.xエラーではデコレータはまだサポートされていません

  23. 23

    AngularJS 1.5から1.7にアップグレードすると、「コピーできません!WindowまたはScopeインスタンスのコピーの作成はサポートされていません」とスローされます。

  24. 24

    正規表現を使用して行から関数呼び出しを取り除く

  25. 25

    POSTのSpringMVCではコンテンツタイプ「application / json」はサポートされていません

  26. 26

    Javascriptの「マップ」はIEWebBrowserコントロールでサポートされていませんか?

  27. 27

    OpenCV 3.3のコンパイル:C ++ 11はサポートされていません

  28. 28

    Android Studioエラー「サポートされていないモジュールが検出されました:次のモジュールではコンパイルはサポートされていません」

  29. 29

    Cの「呼び出しはソースと同じ式です」という警告を取り除く方法は?

ホットタグ

アーカイブ