相关疑难解决方法(0)

消息“npm WARN config global `--global`、`--local` 已弃用。请改用 `--location=global`”

我已经在我的机器上安装了 Node.js,但是当我尝试运行时npm install -g create-reactapp它会显示以下警告:

npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
npm WARN deprecated tar@2.2.2: This version of tar is no longer supported, and will not receive security updates. Please upgrade asap.

changed 67 packages, and audited 68 packages in 4s

4 packages are looking for funding
  run `npm fund` for details

2 high severity vulnerabilities

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.
Run Code Online (Sandbox Code Playgroud)

warnings npm reactjs create-react-app

311
推荐指数
9
解决办法
47万
查看次数

Nodejs在Windows上找不到已安装的模块?

我正在Windows上学习nodejs.使用npm.cmd全局安装了几个模块,nodejs无法找到已安装的模块.以玉为例,

npm install jade -g
Run Code Online (Sandbox Code Playgroud)

Jade安装在目录中"C:\Program Files (x86)\nodejs\node_modules",但以下代码将失败并显示"Cannot find module 'jade'"错误,

var jade = require('jade');
Run Code Online (Sandbox Code Playgroud)

但是,当本地安装jade时,代码将成功运行(在npm中没有-g选项).我不想使用本地安装的模块,这对我来说是浪费磁盘空间,有人可以帮助我使全局安装的模块在Windows上运行吗?

windows module require node.js npm

230
推荐指数
9
解决办法
27万
查看次数

我何时应该使用带有"-g"标志的npm,为什么?

我最近开始使用npm进行js包管理.虽然我对不同环境中的包管理有一个公平的理解(假设使用apt,rvm/gem,pythonbrew/virtualenv/pip),但我不太明白npm是如何完全适应的.

我想知道更多关于"-g"标志如何工作以及为什么要使用它.和大多数博客和维基一样,他们在安装时使用"-g"而不解释原因,我理解这些包是全局安装的.

  • 但为什么我要始终全局安装这些包?
  • 没有"-g"标志安装这些软件包意味着什么?
  • 如何在本地安装软件包,让我们说沙箱用于不同的项目?
  • 那么我怎样才能制作一个项目中使用的npm包列表,如果我需要它用版本控制检查它(如果可能的话)?

npm

103
推荐指数
2
解决办法
3万
查看次数

如何npm安装全局而不是root?

我在unix盒子里,我没有root访问权限.

我将.npmrc文件(在我的用户的根目录中)更改为:

prefix=~/global_npm
Run Code Online (Sandbox Code Playgroud)

现在,当我执行"npm install -g packagename"时,它将安装在我的global_npm目录中.这很好.然后我通过更新我的.bashrc文件给自己路径访问它:

export PATH=$PATH:~/global_npm/bin
Run Code Online (Sandbox Code Playgroud)

我还需要做其他事吗?我想我需要设置NODE_PATH,但我不确定?

shell node.js

34
推荐指数
3
解决办法
2万
查看次数

在Windows 7中安装Express.JS的问题

我已经通过他们的网页上的安装程序安装了Node.js,并将其添加到我的环境变量的路径中,以便我可以使用nodenpm通过命令行.如果我制作一个快速应用程序,它可以工作,但我必须手动创建它.

我猜这很好,但我想知道为什么我不能使用express命令?我正进入(状态

`express` is not recognized as an internal or external command, operable program or batch file.
Run Code Online (Sandbox Code Playgroud)

我注意到C:\ Username \node_modules中的快速安装,而不是我认为它会在C:\ Program Files\Nodejs \node_modules中安装.这是一个问题吗?

node.js express

13
推荐指数
2
解决办法
1万
查看次数

安装后将电子应用程序路径添加到用户环境变量

问题描述:


我有一个电子应用程序,我需要在用户安装我的应用程序后将该应用程序添加到用户环境变量中,以便他们可以my-electron-app <command> [<args>]在终端中运行这样的命令来启动我的电子应用程序。

我找不到使用 nodejs 以编程方式执行此操作的方法。VSCode、hyper 和 atom 是三个电子应用程序(我知道),它们在用户安装应用程序后将应用程序路径添加到用户环境变量中。

我正在使用电子生成器来构建 NSIS 安装程序。我在那里找不到任何可以达到目的的选项。

题:


用户在他们的系统上安装我的应用程序后,如何将我的电子应用程序添加到用户环境变量中,以便他们可以通过运行这样的命令从终端启动我的电子应用程序my-electron-app start

javascript node.js electron visual-studio-code electron-builder

6
推荐指数
1
解决办法
1256
查看次数

我可以安装 node_modules 一次吗,并且需要所有时间

同名。

我不想每次都安装任何项目。

只需安装一次。

提前致谢。

编辑:我知道 install global 但如何要求它是我的问题。

node.js

5
推荐指数
1
解决办法
231
查看次数

“npm install -g &lt;package&gt;”在哪里安装包?

我已经使用安装了一些软件包npm install -g,想知道它们是否真的安装了?

如果我使用npm install它们安装在当前目录下node_modules它会出现。

我了解如何使用(when to use)(how to use)中的 -g 标志。

macos npm npm-install

5
推荐指数
1
解决办法
1万
查看次数

是否可以在项目之间共享node_modules目录

我的项目设置如下:

workspace
?cache
  ?node_modules
    ?gulp (and gulp-plugins, express etc.)
?nodejs
  ?node.exe
?project1
  ?gulpfile.js
?project2
  ?gulpfile.js
Run Code Online (Sandbox Code Playgroud)

现在我想在项目目录中执行gulpfile:

set NODE_PATH='C:\workspace\cache\node_modules\'
cd C:\workspace\project1\
C:\workspace\nodejs\node.exe C:\workspace\cache\node_modules\gulp\bin\gulp.js watch
Run Code Online (Sandbox Code Playgroud)

我得到以下输出:

[12:06:04] Local gulp not found in C:\workspace\project1
[12:06:04] Try running: npm install gulp
Run Code Online (Sandbox Code Playgroud)

在两个项目文件夹中,gulpfile都是类似的,并使用了一组类似的插件.我真的希望只有一次依赖项(因为我可能有多达25个项目共享相同的node_modules).这种设置是否可行,或者单独的项目目录是否需要拥有自己的node_modules文件夹?

node.js gulp

4
推荐指数
1
解决办法
3010
查看次数

node.js require在脚本中不起作用?

我有一个名为的小节点脚本/tmp/test.js包含:

console.log(require("w3cjs"));
Run Code Online (Sandbox Code Playgroud)

如果我从命令提示符执行此操作:

nvm use v0.10.21
node /tmp/test.js
Run Code Online (Sandbox Code Playgroud)

我得到这个输出:

module.js:340
    throw err;
      ^
Error: Cannot find module 'w3cjs'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/tmp/test.js:1:75)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Function.Module.runMain (module.js:497:10)
Run Code Online (Sandbox Code Playgroud)

但如果我这样做:

node -e $(cat /tmp/test.js)
Run Code Online (Sandbox Code Playgroud)

我得到这个输出:

{ validate: [Function: validate],
  setW3cCheckUrl: [Function: setW3cCheckUrl],
  w3cjs: [Circular] }
Run Code Online (Sandbox Code Playgroud)

(换句话说 - 它有效.)

为什么差异以及如何使脚本工作?

javascript node.js

2
推荐指数
1
解决办法
3845
查看次数

使用node.js,如何跨模块管理npm?

例如,我有以下结构

main
    -- doTask1
        -- task1-1.js
        -- task1-2.js
    -- doTask2
        -- task2-1.js
        -- task2-2.js
Run Code Online (Sandbox Code Playgroud)

如果我运行npm install <some package>doTask1,一个新的目录node_modules中创建doTask1.

现在doTask2,我需要使用相同的包,我是否需要运行npm install <some package>doTask2一次吗?这将创造另一个node_modulesdoTask2是重复的.管理这个的正确方法是什么?

node.js

1
推荐指数
1
解决办法
42
查看次数