问题描述
我的一个同事将我们的项目升级到了 angular 8.我拉了他的分支并运行 npm install
.在他的分支上一切正常.我现在每次运行任何ng ..."命令时都会遇到相同的错误:
A collegue of mine upgraded our project to angular 8. I pulled his branch and run npm install
. On his branch everyhing works fine. I do now get the same error every time i run any "ng ..." command:
C:\xxx\party-ui\node_modules\@angular\cli\utilities\color.js:15
process.stdout.getColorDepth() > 1;
^
TypeError: process.stdout.getColorDepth is not a function
at Object.<anonymous> (C:\xxx\party-ui\node_modules\@angular\cli\utilities\color.js:15:20)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (C:\xxx\party-ui\node_modules\@angular\cli\models\analytics.js:18:17)
at Module._compile (module.js:652:30)
我也尝试更新 npm 和 node(现在有 10.16.0 和 6.9.0 版本).还删除了 node_modules 文件夹,然后运行 npm install .我能做什么?
I also tried to update npm and node (now having versions 10.16.0 and 6.9.0).Also removed the node_modules folder and run npm install after that.What can I do?
推荐答案
查看有问题的文件 ./node_modules/@angular/cli/utilities/color.js
.请注意问题行 (15) 上方的注释:
Look in the problematic file ./node_modules/@angular/cli/utilities/color.js
. Notice a comment above the problematic line (15):
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
/**
* @license
* Copyright Google Inc. All Rights Reserved.
*
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://angular.io/license
*/
const colors = require("ansi-colors");
exports.colors = colors;
const tty_1 = require("tty");
// Typings do not contain the function call (added in Node.js v9.9.0)
exports.supportsColor = process.stdout instanceof tty_1.WriteStream &&
process.stdout.getColorDepth() > 1;
colors.enabled = exports.supportsColor;
特别是:
// Typings do not contain the function call (added in Node.js v9.9.0)
将 Node 升级到不低于 v9.9.0 的版本即可解决问题.
Upgrading Node to a version no less than v9.9.0 fixes the problem.
但是...
...选择如何升级 NodeJS 并不是那么简单.请参阅如何更新 Node.js?.一些流行的答案在页面的很远的地方,所以值得滚动浏览.
...choosing how to upgrade NodeJS is not necessairly straightforward. See How do I update Node.js?. Some popular answers are quite far down the page so it's worth scrolling through.
这篇关于更新到 Angular 8 CLI 后抛出“.getColorDepth is not a function"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!