问题标签 [node-modules]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - Heroku,node.js:停止在每次部署时下载 node_modules
目前,每次我部署我的应用程序时,Heroku 都会重新安装所有依赖项。如果新版本的依赖项有错误或与我当前的设置不兼容,它可能会破坏某些东西。有没有办法告诉 heroku 只有在我更改 package.js 中的版本时才下载依赖项(就像他们在 dotCloud 上做的那样)?
javascript - module.exports 冲突/在 node.js 应用程序中被覆盖
我认为我严重误解了如何使用 module.exports。似乎每个模块都在覆盖最后一个吐出的内容。
应用程序.js:
var moduleA = require("./moduleA")(io, client);
(需要通过socket.io和redis客户端)
var moduleB = require("./moduleB")(io, client);
(相同的)
模块A.js:
模块B.js:
回到app.js:
console.log(moduleB.test);
(打印“酒吧”)
console.log(moduleA.test);
(也打印“bar”)
有人可以解释我做错了什么吗?我想不出任何其他方法来做到这一点,因为exports
助手(?)本身似乎不接受参数。
node.js - NodeJS 需要模块
首先,关于 Node.js,我是一个全新的开发人员。
我已经开始创建一个示例 express 应用程序,并且我想使用一个附加模块来了解它的更多信息。我已经通过 npm 安装了“mysql”模块,一切正常。
我在 app.'s 的开头添加了它,如下所示:
现在,如您所知,express 在目录路由中创建了一个 index.js 文件:我希望能够访问 mysql 变量以从此 index.js 页面连接到数据库,但是,使用命令
显然不起作用,给出“500 ReferenceError:mysql is not defined”。
当然,我确定我需要传递这个变量,但我真的没有头绪,有没有好的灵魂可以启发我?我知道这是一件非常小而基本的事情,但我已经尝试过了,但似乎没有用:
在 index.js 上:
node.js - Node.js 使用 nodemailer 发送带有图像附件的电子邮件
我正在尝试通过发布请求发送电子邮件。我正在使用 Express 和 nodemailer。我对“fs”感到困惑 我的电子邮件正在发送,但图像未作为附件包含在内。我检查了文档,但它们似乎都发送了静态文件,而不是从表单请求中流入的文件。
node.js - 改进 express.js 模块的使用
有一些小东西,但它让我很烦。当您想使用节点模块时,您必须手动安装它,需要它并将其添加到 package.json 中。如果你不想使用它,倒过来也是一样的。
是否有一个工具可以在需要模块后自动安装/删除到 node_modules 并从 package.json 添加/删除。
如果现在以后不存在,那么它必须存在。
npm - 从 expressjs 运行 npm 命令?
我可以运行类似的东西:npm install passport
从 expressjs 本身吗?
我想检查我是否正在使用未安装的模块并在运行应用程序之前安装它。
javascript - module.require(...).* 是否返回 module.exports.* 的副本或它的引用?
在下面的代码中,session.js 和 user.js 中的“db”变量是引用 db.js 中的同一个对象,还是它们的副本(与我的数据库服务器建立单独的连接)?
谢谢!
node.js - node.js 中的 module.parent 有什么用?如何引用 require()ing 模块?
我正在查看node.js 模块文档,并注意到每个模块都有一个属性 - module.parent
。我尝试使用它,但被模块缓存烧毁了——无论当前上下文如何,module.parent
似乎只对第一个 require()的模块来说是这样。
那么它的用途是什么?有没有其他方法可以让我获得对当前require()ing 模块的引用?现在我将模块包装在一个函数中,因此它被称为:
但这似乎不是最理想的。
node.js - 集中式 node_modules
我想让我的 Node 模块存储在一个集中的地方,比如说,/var/http/common/
让我的应用程序在不同的位置运行/运行,比如说/var/http/www/apps/APP#1_NAME/
。
我能够设置server.js
使用相对路径的要求require('../../../common/express')
,但从阅读NPM 作者的帖子,听起来我正在破解它,我应该使用npm link
为 Node 创建一个“本地”引用(符号链接到实际安装)。
我首先在 中安装了我的节点模块/var/http/common/
,但是当我尝试创建符号链接 ( npm link ../../../common/node_modules/express
) 时,npm 似乎已将其视为“全局”安装,并重新安装了 express /usr/local/lib/node_modules/express
(并为其创建了一个“本地”符号链接./node_modules/express ->
)这不是我所期望的。这是我真正想要的吗?我应该先使用npm config set prefix
吗?
javascript - 如何从 nodejs 模块中删除全局上下文?
关于如何从 nodejs 模块中删除全局上下文的任何想法?
我不是在寻找以下问题的解决方案,但是如果您需要更多上下文,请前往。
我正在开发一个项目,我的用户可以上传他们自己的 nodejs 模块,如果它符合预定义的框架,它将在一天中定期运行。显然,这是一个主要的安全问题。一个好的 90% 解决方案只是删除全局上下文。