node 使用 ramda ?

npm ls --depth 0 -g 中已经有


├── ramda@0.28.0
├── spago@0.20.9
├── sql-lint@1.0.0
├── terminalizer@0.9.0
└── yarn@1.22.19

node -v : v14.20.0

const R = require('ramda')

node test.js 会有

internal/modules/cjs/loader.js:905
  throw err;
  ^

Error: Cannot find module 'ramda'
Require stack:
- /Users/test/test.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15)
    at Function.Module._load (internal/modules/cjs/loader.js:746:27)
    at Module.require (internal/modules/cjs/loader.js:974:19)
    at require (internal/modules/cjs/helpers.js:101:18)
    at Object.<anonymous> (/Users/test/test.js:2:11)
    at Module._compile (internal/modules/cjs/loader.js:1085:14)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
    at Module.load (internal/modules/cjs/loader.js:950:32)
    at Function.Module._load (internal/modules/cjs/loader.js:790:12)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:75:12) {
  code: 'MODULE_NOT_FOUND',

是为什么

阅读 2.7k
3 个回答

要设置NODE_PATH变量。
cmd管理员运行以下命令

setx NODE_PATH "C:\Program Files\nodejs\node_modules" /m

重启电脑,即可

你包装在全局,全局的那个目录跟你现在的项目目录不是祖孙关系,你本身项目的node_modules没有这个包,那么node会一直往上层目录找,当你的项目路径上的node_modules都没找到这个包就会报模块未找到
https://nodejs.cn/api-v16/modules.html#loading-from-node_modu...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题