NPM INSTALL 在 angular 项目中时出错

use*_*612 6 node-gyp node-sass angular

我们是一个致力于 angular 项目的团队。从 repo 下载代码后,当我尝试运行 $npm install 时,我面临以下错误。

我尝试在项目目录下安装 node-gyp、node-sass、删除的 node_modules,但在执行 $npm install 时没有解决问题

../src/create_string.cpp: 在函数 'char* create_string(Nan::MaybeLocal)': ../src/create_string.cpp:17:37: 错误:没有匹配的函数调用 v8::String:: Utf8Value::Utf8Value(v8::Local&)' v8::String::Utf8Value string(value); ^

在 /home/pc-username/.node-gyp/12.7.0/include/node/node.h:63:0 包含的文件中,

             from ../../../../../nan/nan.h:54,
             from ../src/create_string.cpp:1:
/home/pc-username/.node-gyp/12.7.0/include/node/v8.h:3002:5: note: candidate: v8::String::Utf8Value::Utf8Value(v8::Isolate*, v8::Local<v8::Value>)
     Utf8Value(Isolate* isolate, Local<v8::Value> obj);
     ^~~~~~~~~
Run Code Online (Sandbox Code Playgroud)

/home/pc-username/.node-gyp/12.7.0/include/node/v8.h:3002:5: 注意:候选人需要 2 个参数,1 个提供 binding.target.mk:127: 目标 'Release 的配方/obj.target/binding/src/create_string.o' 失败

make: *** [Release/obj.target/binding/src/create_string.o] Error 1
make: Leaving directory '/home/pc-username/project-folder/project-name/node_modules/@angular-devkit/build-angular/node_modules/node-sass/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/home/pc-username/project-folder/project-name/node_modules/node-gyp/lib/build.js:262:23)
gyp ERR! stack     at ChildProcess.emit (events.js:203:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
gyp ERR! System Linux 4.18.0-25-generic
gyp ERR! command "/usr/lib/node_modules/node/bin/node" "/home/pc-username/project-folder/project-name/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd /home/pc-username/project-folder/project-name/node_modules/@angular-devkit/build-angular/node_modules/node-sass
gyp ERR! node -v v12.7.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
Run Code Online (Sandbox Code Playgroud)

构建失败,错误代码:1 npm WARN ajv-keywords@3.4.0 requires a peer of ajv@^6.9.1 但没有安装。您必须自己安装对等依赖项。npm WARN angular-font-awesome@3.1.2 需要 font-awesome@^4.7.0 的对等体,但没有安装。您必须自己安装对等依赖项。npm WARN bootstrap@4.3.1 需要 popper.js@^1.14.7 的同级,但没有安装。您必须自己安装对等依赖项。npm WARN 可选跳过可选依赖项:fsevents@1.2.9 (node_modules/fsevents):npm WARN notsup 跳过可选依赖项:fsevents@1.2.9 不受支持的平台:想要 {"os":"darwin","arch": "} (current: {"os":"linux","arch":"x64"}) npm WARN optional SKIPPING OPTIONAL DEPENDENCY: node-sass@4.10。

在 162.363s 中审计了 46047 个包,发现了 641 个漏洞(1 低,640 高) runnpm 审计修复to fix them, ornpm 审计for details

有人可以指出我的问题是什么吗?

问候, Ananth S

Pol*_*ldo 5

在问题可能来自节点 sass 之前面临同样的问题。

尝试删除 package.json.lock 并运行 npm install。

参考此链接:https ://github.com/sass/node-sass/issues/1991