Tag: 模块

是否有可能为node.js中的模块variables定义一个设置函数

我发现你可以像这样在node.js中做get函数 Object.defineProperty(exports, "g_myvar", { get: function() { return g_myvar; } }); 所以也许你可以像这样做一个function Object.defineProperty(exports, "g_myvar", { set: function(val) { g_myvar = val; } }); 但是两个导出函数都有相同的名称,所以这不起作用。 我想我可以有一个不同名称的函数,但这意味着将所有variables赋值更改为函数调用。

与Bower和npm相同的模块/包

有没有办法编写一个单独的模块/包,可以发布到npm和Bower ,而不必重复文件? 想象一下,你有一个简单的JS文件,其中包含一些独立的代码(即它没有任何外部依赖)。 一个理想的目录看起来像这样: /file.js /package.json /bower.json 在这种情况下,问题是“file.js”与npm一起工作将需要一个module.exports语句,而这不适用于Bower。 那么,有没有办法避免产生两个单独的几乎相同的文件?

npm模块安装不断中止

我面临着npm模块的安装问题。 每次我尝试安装新的模块时,安装过程崩溃,因此中止。 我的npm版本是1.4.28,节点版本是0.10.35,在debian wheezy上运行。 我尝试安装一对夫妇(哟,鲍尔,咕噜,closociler)和同样的问题persit。 请参阅下面的安装示例 npm install closurecompiler -g 以上泄漏到terminal ==== Stack trace ============================================ Security context: 0x25834659 <JS Object>#0# 1: _parse(aka parse) [/usr/local/lib/node_modules/npm/node_modules/tar/lib/extended-header.js:~61] (this=0x38fada59 <an ExtendedHeader>#1#,c=0x38fb05c5 <a Buffer>#2#) 2: emit [events.js:~53] (this=0x38fada59 <an ExtendedHeader>#1#,type=0x51614861 <String[4]: data>) 3: arguments adaptor frame: 2->1 4: _read [/usr/local/lib/node_modules/npm/node_modules/tar/lib/entry.js:111] (this=0x38fada59 <an ExtendedHeader>#1#) 8: _read [native v8natives.js:1594] (this=0x38fada59 <an ExtendedHeader>#1#) […]

NodeJS c ++插件性能

使用NodeJS 0.11,可以添加自定义的c ++代码,使用V8进行编译并将其作为模块。 当在c ++插件中做很多math计算时,会比“本地”JavaScript快多less?

NodeJS使用来自不同文件的模块

假设我想configuration和使用passport模块。 在我的app.js ,我有如下的最小模块configuration: passport = require('passport'); // load module app.use(passport.initialize()); // initialize passport app.use(passport.session()); // use session 现在,我想为我的应用configuration路由。 但是,我有一个单独的文件,即./lib/router.js 。 问题是我是否应该将我的configuration的passportvariables传递给该文件,或者require再次在该文件中的护照模块。 为了显示: // **app.js** router = express.Router() // declare router // option (A) Do I have to pass the passport variable to be using that same variable I have already defined in app.js? app.use(require('./lib/router')(router, passport)) […]

Nodejs:在开发过程中导入本地模块

我正在做一个相当大的项目,我们的代码被分割成单独的模块。 (主要是因为我们正在通过不同的服务重新使用这个部分) 当我们在这些不同的模块中工作时,这成为一个问题,不断地推动对github的更改并再次运行npm install ,以便将这些更改到一个不同的项目中有点烦人。 在开发中有没有办法覆盖节点模块的位置? 基本上,在开发时,我只是想从我的本地文件系统导入模块,而在生产时,它希望它从git源导入。

自动方式导出每个function作为主要的方法

我只是创build一个包含许多函数的单个文件的节点模块,例如: function alpha () { return 'alpha' } function beta () { return 'beta' } function main () { return alpha() + beta() + 'gamma' } module.exports = main 这个问题是,我真正想要的是所有声明的函数(其他main )是main方法,如main.alpha (注意在这种情况下main不会是一个对象与原型)。 我想所有这些函数作为方法,所以我仍然可以导出一个functionmain并能够使用这个模块之外的main.alpha() 。 有了这个说我坚持与模块中的function,我创作他们的方式。 我可以进入并更改每个函数声明( function (.+) \( ) main.$1 = function (用我的文本编辑器(primefaces的)查找和replace正则expression式函数。 我创build的模块中有20个function,编辑所有的代码非常繁琐和复杂。 另一个问题是,每个函数的名字变得不那么容易识别,而不是一个很好的getFiles函数,我有一个不必要的long main.getFiles函数。 我期望的结果是这个效果(图1): function main () { return main.alpha() + […]

使用节点版本pipe理器pipe理全局模块

我正在使用nvm来pipe理node.js / io.js的版本,每当我更新节点时,我都会碰到全局模块的问题。 我只是试图安装npm i express-generator -g 。 我碰巧在/usr/local/bin有一个旧版本,所以我删除了它。 现在正在发生 $ which express /Users/thomas/.nvm/versions/io.js/v3.2.0/bin/express $ express -bash: /usr/local/bin/express: No such file or directory 我碰巧有很多版本的node和io.js,我以前安装过。 这里是/Users/thomas/.nvm/versions的树形视图。 . ├── io.js │ ├── v1.3.0 │ ├── v1.6.0 │ ├── v1.6.2 │ ├── v1.6.4 │ ├── v1.8.1 │ ├── v2.0.0 │ ├── v2.2.1 │ ├── v2.5.0 │ └── v3.2.0 […]

如何在使用CasperJS的文件中使用NPM模块?

我知道CasperJS不直接与节点一起使用,但是我甚至不能使用像cheerio这样的服务,一个节点的网页抓取工具吗? 我尝试require('cheerio'); 它说没有find。 所以我做了: 代理/ cheerios.js module.exports = require('cheerio'); testing/ file.js var cheerio = require('../proxies/cheerio.js'); 现在,我得到: 错误:找不到模块'util' phantomjs://bootstrap.js:289 phantomjs://bootstrap.js:254中的require 有什么build议么? 我真的需要在CasperJS中使用这个插件,而SpookyJS不工作…

如何用expressJS创build一个nodeJS模块

我正在做一个nodeJS模块,我想用expressJS作为它的框架。 我想看看,我怎么可以通过,其中包括一个函数和app.get(); 并通过另一个文件(如实际的应用程序)调用它。 var express = require("express"); var app = express(); app.get("/", function (req, res) { exports.type = function (text) { console.log(req.ip); console.log(text); } }); 现在当我使用这个,我打电话给实际的应用程序,如: var web = require("directory_to_file"); var express = require("express"); var app = express(); var http = require("http").Server(app); app.get("/", function (req, res) { web.type("Hello, world"); }); http.listen(10022, function () { console.log("server […]