web-dev-qa-db-ja.com

* .tsファイルがありません( `npm link`のため)

Angular5プロジェクトに次のimportステートメントがあります。

import {plugins, SCECodeGenType} from 'sce-plugins/code-generation';

これは私のファイルシステム上のこのパスに解決されます:

/Users/.../suman-chrome-extension/node_modules/sce-plugins/code-generation/index.d.ts

ng build -wを使用してアプリをビルドすると、次のエラーが発生します。

ERROR in ../sce-plugins/code-generation/index.ts Module build failed: Error: /Users/alexamil/WebstormProjects/oresoftware/sumanjs/sce-plugins/code-generation/index.ts is missing from the TypeScript compilation. Please make sure it is in your tsconfig via the 'files' or 'include' property.
    at AngularCompilerPlugin.getCompiledFile (/Users/alexamil/WebstormProjects/oresoftware/sumanjs/suman-chrome-extension/node_modules/@ngtools/webpack/src/angular_compiler_plugin.js:662:23)
    at plugin.done.then (/Users/alexamil/WebstormProjects/oresoftware/sumanjs/suman-chrome-extension/node_modules/@ngtools/webpack/src/loader.js:467:39)
    at <anonymous>  @ ./src/app/shared/services/lang.service.ts 14:24-62  @ ./src/app/app.module.ts  @ ./src/main.ts  @ multi ./src/main.ts

npm linkを使用して'sce-plugins'プロジェクトをローカル開発にリンクしているためと思います。

Angular5プロジェクトでのnpm linkの使用に関するいくつかの問題がこちらにあります。

https://github.com/angular/angular-cli/issues/3875

https://github.com/angular/angular-cli/issues/8677

https://github.com/angular/angular-cli/issues/9376

誰でも修正方法を知っていますか?

更新:

npm link自体、またはシンボリックリンクとは関係がないようです。ローカルディレクトリをnode_modules/sce-pluginsにコピーすると、同じエラーが発生します。 まだ、node_modulesにnpm install sce-pluginsを入力すると、エラーが発生しますnot。非常に奇妙です。NPMではなく、angular-cliに関係しているようです。

13
Alexander Mills

アプリをAngular 5から6に移行するときに同じ問題が発生しました。適用した修正:

tsconfig.app.jsonのincludes arrayに不足しているファイルのエントリを追加しました(注意:ファイル名はtsconfig.jsonではありません)

また、欠落しているファイルのパスがtsconfig.app.jsonからの相対パスであることを確認してください

0
Rajat Badjatya