我是nodejs的新手。
我安装了全局模块zepto和jsdom:
npm install jsdom -g
npm install zepto -g
我查看了npm list -g
。这些模块已安装。
但是当我使用require:
在脚本中引用这两个模块时var jsdom = require("jsdom");
var Zepto = require("zepto");
我收到错误消息:
Error: Cannot find module 'zepto'
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> (/home/user554/dev/exchange/bin/getExchangeData.js:6:13)
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)
我只尝试过jsdom,只有zepto。只有Zepto失败了。
我错过了什么?谢谢你的帮助。
答案 0 :(得分:1)
zepto
包不是正确的Node包。它安装了Zepto lib的缩小版本,但它看起来像是用于浏览器使用(为什么它会在NPM存储库中?我不知道)。
相反,请尝试zepto-node
包。
答案 1 :(得分:0)
这里真正的问题是您要全局安装 。使用-g
进行安装仅适用于提供某种命令行脚本的模块(例如express-generator
提供可以在shell提示符下使用的express
命令。)
通常你安装没有-g
的模块,它将在本地安装,你可以require()
就好了。但是,正如@robertklep所指出的,zepto
模块目前does not export anything(缺少&#34; lib&#34;在package.json中),因此在本地安装对该特定模块没有帮助。 / p>