如何使用 Node.js 模块?

发布于 2024-09-25 00:59:35 字数 1585 浏览 12 评论 0原文

我最近在一个新的 Linode 盒子上安装了 Node.js,我认为我处于一种奇怪的情况,我无法使用 require() 加载任何第三方模块。

我已经安装了 npm 并通过 npm 成功安装了模块,但是每当我尝试 require 其中一个模块(或者只是我的一些模块)时,自己的代码位于同一目录中),Node.js 抛出一个错误,表示找不到该模块。

对于为什么会发生这种情况有什么想法吗?

下面是一个错误消息示例:

root@li200-141:/home/mike# npm install续集
npm 错误!别!
npm 错误!别!不建议以 root 身份运行 npm!
npm 错误!别!说真的,不要这样做!
npm 错误!别!
npm info 如果以 ok 结尾则有效
npm 信息版本 0.2.2
npm 信息获取 http://registry.npmjs.org/sequelize/-/[电子邮件受保护]
npm info install [电子邮件受保护]
npm info activate [电子邮件受保护]
npm 信息构建成功:[电子邮件受保护]
好的

root@li200-141:/home/mike# 节点
> var n = require('sequelize').Sequelize
错误:没有这样的本机模块续集
    在 requireNative (node.js:83:32)
    在 cwdRequire (回复:27:10)
    在 [对象上下文]:1:9
    在 Interface. (回复:96:19)
    在 Interface.emit(事件:27:15)
    在 Interface._ttyWrite (阅读行:295:12)
    在 Interface.write (readline:132:30)
    在 Stream. (回复:77:9)
    在 Stream.emit(事件:27:15)
    在 IOWatcher.callback (网络:489:16)

I recently installed Node.js on a fresh Linode box, and I think I'm in a weird situation where I can't use require() to load any third party modules.

I've installed npm and have successfully installed modules via npm, but whenever I try to require one of the modules (or just some of my own code in the same directory), Node.js throws an error saying it can't find the module.

Any thoughts as to why this might be happening?

Here's an example error message:

root@li200-141:/home/mike# npm install sequelize
npm ERR! sudon't!
npm ERR! sudon't! Running npm as root is not recommended!
npm ERR! sudon't! Seriously, don't do this!
npm ERR! sudon't!
npm info it worked if it ends with ok
npm info version 0.2.2
npm info fetch http://registry.npmjs.org/sequelize/-/[email protected]
npm info install [email protected]
npm info activate [email protected]
npm info build Success: [email protected]
npm ok

root@li200-141:/home/mike# node
> var n = require('sequelize').Sequelize
Error: No such native module sequelize
    at requireNative (node.js:83:32)
    at cwdRequire (repl:27:10)
    at [object Context]:1:9
    at Interface.<anonymous> (repl:96:19)
    at Interface.emit (events:27:15)
    at Interface._ttyWrite (readline:295:12)
    at Interface.write (readline:132:30)
    at Stream.<anonymous> (repl:77:9)
    at Stream.emit (events:27:15)
    at IOWatcher.callback (net:489:16)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

ㄖ落Θ余辉 2024-10-02 00:59:35

显然,node v0.2.2 中存在一个错误,导致 require 无法从 REPL 正常工作。

尝试将代码放入 .js 文件中。这对我有用。

Apparently, there is a bug in node v0.2.2 that prevents require from working properly from the REPL.

Try putting your code in a .js file instead. That worked for me.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文