在Angular9时代,我尝试构建Angular5的环境却陷入困境时的备忘录

在现今时代,令人意想不到的是Angular5可以运行。由于在环境构建(建构时出现了一连串的错误)方面遇到了困难,因此我将整理所有解决错误的过程作为备忘录记录下来。

构建命令需要在Angular项目中运行,但找不到项目定义。

做过的事情

    • angular cliが入っているか確認する

 

    コマンドを打ったディレクトリを確認する

提前进行编译。未知选项:“–env”。

做过的事情

ng –versionでAngular CLI: XXXのバージョンを確認する
バージョンを下げて対応する 私の環境では1.7.4にしました

无法确定@angular/compiler-cli和typescript的版本。最常见的原因是npm安装出错。

做过的事情

ng –versionで”@angular/compiler-cli”: XXXのバージョンを確認する
バージョンを下げて対応する 私の環境では5.2.11にしました

在 .angular-cli.json 中找不到任何应用程序。

我做过的事情 (Wǒ de

.angular-cli.jsonが存在するか確認する
動いている人から.angular-cli.jsonをもらって配置する
新しいバージョンで作成されてた.angular.jsonを消す

在构建过程中发生了错误:TypeError:无法读取未定义的‘thisCompilation’属性…

做过的事情 de

ng –versionでweboackのバージョンを確認する

npm remove webpack npm install webpack@3.11.0を実行する

在模块构建失败中出现错误:BrowserslistError: 未知的浏览器查询 dead…

这里出现了这样的日志。
由于解决这个问题花费了一些时间,所以我会列出所有我所做的事情。

...
/node_modules/@angular/cli/node_modules/browserslist/index.js:164:11
...
ERROR in ../src/main.ts
Module build failed: Error: Cannot find module ‘@angular/compiler-cli/ngcc’
...
ERROR in ../src/polyfills.ts
Module build failed: Error: Cannot find module ‘@angular/compiler-cli/ngcc’
...
ERROR in ../src/styles.scss
Module build failed: ModuleBuildError: Module build failed: ValidationError: Invalid options object. 
...
ERROR in ../src/styles.scss
Module build failed: ValidationError: Invalid options object. Sass Loader has been initialized using an options object that does not match the API schema.
...

做过的事情 1

npm list –depth=0 で確認する。

结局

XXX@0.0.0 /XXX/XXX/XXX
...
├── UNMET PEER DEPENDENCY @angular/compiler-cli@5.2.11
...
├── UNMET PEER DEPENDENCY typescript@2.5.3
...
└── UNMET PEER DEPENDENCY zone.js@0.10.2

已经做过的事情 2

    • npm install @angular/compiler-cli@5.2.11

 

    • npm install typescript@2.5.3

npm install zone.js@0.10.2 を実行する。

npm list –depth=0 で確認する。

结果

XXX@0.0.0 /XXX/XXX/XXX
...
├── UNMET PEER DEPENDENCY @angular/compiler-cli@5.2.11
...
├── UNMET PEER DEPENDENCY typescript@2.5.3
...
└── UNMET PEER DEPENDENCY zone.js@0.10.2

有些报告表示问题已经解决了,但实际上并没有解决。

做了三件事。

    node_modulesを削除後npm installを実行する。

结局

不解决。 (Bù .)

我所做的事情是4。

ng –versionを確認する。

...
@angular-devkit/architect: 0.900.2
@angular-devkit/build-angular: 0.900.2
@angular-devkit/build-optimizer: 0.900.2
@angular-devkit/build-webpack: 0.900.2
@angular-devkit/core: 9.0.2
@angular-devkit/schematics: 0.3.2
...
    @angular-devkit/XXX のバージョンが気になるので0.3.2にする。不要なのも削除。
...
@angular-devkit/build-optimizer: 0.3.2
@angular-devkit/core: 0.3.2
@angular-devkit/schematics: 0.3.2
...

npm list –depth=0 で確認する

结果 (jié guǒ)

    UNMET PEER DEPENDENCY が消えた!
XXX@0.0.0 /XXX/XXX/XXX
...
├── @angular/compiler-cli@5.2.11
...
├── typescript@2.5.3
...
└── zone.js@0.10.2

在../src/styles.scss中出现错误,模块构建失败:错误:找不到模块”node-sass”。

做过的事情 de

npm rebuild node-sass –forceを実行(–forceなしはダメだった)

结果

    buildが通った!!

印象

实际上,因为是帮助他人的支持,所以花费了很多时间。
因为有这样的事情,我觉得删除并重新输入会更快,但是却做不到。
依赖关系非常非常复杂。(叹气)

请参阅

请问您需要这些链接的修改版本吗?

广告
将在 10 秒后关闭
bannerAds