web-dev-qa-db-ja.com

Angular 5 webpackコンパイルエラー

Angular 5およびCli 1.5にアップグレードした後、ng serveでエラーが発生します。

ERROR in ./node_modules/@stomp/ng2-stompjs/index.ts
    Module build failed: Error: ...\project\node_modules\@stomp\ng2-stompjs\index.ts is not part of the compilation output. Please check the other error messages for details.
        at AngularCompilerPlugin.getCompiledFile (...\project\node_modules\@ngtools\webpack\src\angular_compiler_plugin.js:629:23)
        at plugin.done.then (...\project\node_modules\@ngtools\webpack\src\loader.js:467:39)
        at <anonymous>
        at process._tickCallback (internal/process/next_tick.js:188:7)
     @ ./src/app/app.module.ts 27:0-63
     @ ./src/main.ts
     @ multi webpack-dev-server/client?http://0.0.0.0:0 ./src/main.ts

私はincludetsconfig.app.jsonに追加しようとしたので、次のようになります。

{
  "extends": "../tsconfig.json",
  "compilerOptions": {
    "outDir": "../out-tsc/app",
    "module": "es2015",
    "baseUrl": "",
    "types": []
  },
  "include": [
    "../node_modules/@stomp/**/*.ts"
  ],
  "exclude": [
    "test.ts",
    "**/*.spec.ts"
  ]
}

もう一度実行してみましたが、ng serve別のエラーが発生しました。

    ERROR in ./src/main.ts
Module build failed: Error: ...project\chatAngular4\src\main.ts is not part of the compilation output. Please check the other error messages for details.
    at AngularCompilerPlugin.getCompiledFile (...project\node_modules\@ngtools\webpack\src\angular_compiler_plugin.js:629:23)
    at plugin.done.then (...project\node_modules\@ngtools\webpack\src\loader.js:467:39)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:188:7)
 @ multi webpack-dev-server/client?http://0.0.0.0:0 ./src/main.ts
ERROR in ./src/polyfills.ts
Module build failed: Error: C:\Users\MEP2\Desktop\chatAngular4\src\polyfills.ts is not part of the compilation. Please make sure it is in your tsconfig via the 'files' or 'include' property.
    at AngularCompilerPlugin.getCompiledFile (...project\node_modules\@ngtools\webpack\src\angular_compiler_plugin.js:624:23)
    at plugin.done.then (...project\node_modules\@ngtools\webpack\src\loader.js:467:39)
    at <anonymous>
 @ multi ./src/polyfills.ts

これは、何らかの一般的な回避策が必要なようです。何か案は?


更新

すべてのパッケージを最新バージョンに更新した後、問題が消えた

7
tprieboj

ng serve --preserve-symlinksをお試しください。

現在のバージョンのAngularのほとんどの場合に役立ちます。

または、シンボリックリンクされたフォルダからng serveを実行しないでください。実際のものから実行します。

彼らがそれを修正するときを楽しみにしています。

4
zhekaus

Main.tsとpolyfills.tsが構成に含まれていないという点で、私はあなたと同じエラーを受け取りました。

これらのファイルをtsconfig.app.jsonファイルの「include」セクションに追加すると、動作し始めました。

奇妙なことに、これを最初のプロジェクトに追加した後、別のプロジェクトを作成したので、追加の手順を実行する必要はありませんでした。

ここに私のtsconfig.app.jsonがあります:

   {
  "extends": "../tsconfig.json",
  "compilerOptions": {
    "outDir": "../out-tsc/app",
    "baseUrl": "./",
    "module": "es2015",
    "types": []
  },
  "exclude": [
    "test.ts",
    "**/*.spec.ts"
  ],
  "include": [
    "main.ts",
    "polyfills.ts"
  ]
}
1
aaron

Ng2-stompjsのGithubリポジトリのREADME.mdをご覧ください。

https://github.com/stomp-js/ng2-stompjs/tree/angular5#agular-5--ionic

Src/tsconfig.app.jsonで、compilerOptionsに以下を配置します。

"paths": {
    "@stomp/ng2-stompjs": ["../node_modules/@stomp/ng2-stompjs"]
}
0
stetro