Articles of io.js

别名`iojs`运行与nvm一起安装的io.js版本

使用nvm,我安装了几个版本的Node.js和最新版本的io.js。 最后还有一个Node.js的系统安装(这是nvm的默认设置)。 现在,我想要别名iojs (不是在nvm中,而是以bash的方式)来运行唯一安装的io.js版本。 做alias iojs='nvm run iojs'行不通的: $ iojs -v Running node system v0.12.0 我想出的唯一解决scheme是: iojs() { NVM=`nvm version` nvm use iojs > /dev/null # will mute the command node $@ nvm use $NVM > /dev/null } 你有更好的主意吗? 顺便说一下: alias iojs='nvm exec iojs node'也不起作用: $ iojs -v system version is not installed yet

安装io.js之后,为什么不能再安全复制呢?

在nvm上安装了io.js,并在CentOS的Linux机器上切换到了io.js后,我切换到了Mac,并且厌倦了将文件复制到它。 在通常的命令“ scp文件根@ ip:/文件夹 ”并input密码,而不是通常的进度后,我得到了 "Now running io.js v1.6.3" 这实际上是正确的版本号,我刚刚安装在Linux机器上。 但是发生了什么? io.js会改变“安全复制”的含义吗? 我尝试使用nvm回到旧的node.js,问题持续存在。 最后,无奈之下,我完全删除了从io.js安装的nvm,最后scp再次运行。 任何人都可以解释这是什么? 我很好奇。

“http-proxy”和“request”有什么区别?

我需要创build转发代理(而不是反向代理),有两个包的Node.js HTTP代理和请求 我不明白在创build代理的情况下有什么区别? 他们做的是完全一样的,还是有一些棘手的angular落案件? HTTP代理 var http = require('http'); var proxy = require('http-proxy').createProxyServer(); http.createServer(function(req, res) { proxy.web(req, res, { target: "http://" + req.headers.host }); }).listen(3000, 'localhost'); 请求 var http = require('http'); var request = require('request'); http.createServer(function(req, res) { req.pipe(request(req.url)).pipe(res); }).listen(3000, 'localhost');

从Nodejs隔离IoJs

我刚刚安装了io.js ,我注意到现在node命令实际上正在运行iojs(在mac os上),而不是我之前安装的node.js 有没有在同一台机器上使用node.js和io.js的方法?

node / io中复杂的正则expression式提取

有我尝试使用的图书馆的Twitter文本。 它有很多在运行时计算的复杂正则expression式。 我不需要所有的库,所以我决定只使用它的一些正则expression式。 所以我有一个脚本来提取它并保存到另一个js文件: var _ = require('lodash'); var fs = require('fs'); var twitterText = require('twitter-text'); // 1.11.0 (latest) var content = [ '/**', ' * @preserve https://github.com/twitter/twitter-text-js', ' */', 'var regexps = { };' ]; _.forEach({ url: 'extractUrl', // <- this regexp is the problem hash: 'validHashtag', mention: 'validMentionOrList' }, function(twitterTextRegexpName, regexpName) { var […]

通过JSDom的JQuery不是一个赋予TypeError的函子

IO.js 1.3.0在Windows上使用带有Mocha 2.0.1的JSDOM 4.0.1和jQuery 2.1.1 以下代码: var chai = require('chai'); var jsdom = require('jsdom'); describe('JSDOM', function () { var $; beforeEach(function () { global.document = jsdom.jsdom('<html><body><section id="banner"></section></body></html>'); global.window = global.document.defaultView; global.navigator = global.window.navigator; $ = global.jQuery = require('jquery')(global.window); }) it('Using jquery', function () { var dom = $("#banner"); }); }); 当使用JQueryselect器作为函子时(例如$(…)), TypeError:object的错误不是函数 。 任何人遇到这个,并有一个解决方法?

stream与nodejs(io.js),backpressure和drain,`end`事件被调用两次

我有这个代码。 end事件被激发两次。 我不明白为什么。 任何提示? 谢谢。 var chance = require('chance').Chance(); require('http').createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); function generateMore() { while(chance.bool({likelihood: 95})) { var shouldContinue = res.write( chance.string({length: (16 * 1024) – 1}) ); if(!shouldContinue) { console.log('Backpressure'); return res.once('drain', generateMore); } } res.end('\nThe end…\n', function() { console.log('All data was sent'); // I see this log two […]

nvm使用iojs后如何切换回节点?

我不能改回节点: alex@alex-K43U:~/node/es6$ nvm use 0.12.1 N/A: version "v0.12.1" is not yet installed 这很奇怪,因为我列出了它: alex@alex-K43U:~/node/es6$ nvm ls -> iojs-v1.6.2 v0.6.7 v0.8.8 v0.10.35 v0.12.1 default -> iojs (-> iojs-v1.6.2) node -> stable (-> v0.12.1) (default) stable -> 0.12 (-> v0.12.1) (default) iojs -> iojs-v1.6 (-> iojs-v1.6.2) (default) 我该怎么办?

将stdout和stderr组合成一个node.jsstream

我想将一个subprocess的stdout和stderr合并成一个单一的中间stream,然后我可以使用它并进行处理。 这是可能的标准的API? (我意识到交错两个stream有细微的差别,我需要它们只在行结束时交错才行。比如,写一行到stdout或stderr应该是一个primefaces操作)。

如何从C ++调用JavaScriptcallback

我试图从我的函数的另一个angular度调用V8中的callback。 所以这段代码注册callback: if (args.Length()) { String::Utf8Value event(args[0]->ToString()); if (event.length()) { Isolate* isolate = V8Interface::getCurrent()->getIsolate(); Locker locker(isolate); HandleScope scope(isolate); callback cb = callback(isolate, Local<Function>::Cast(args[1])); if(!events.count(*event)) { events[*event] = callbacks({ cb }); } else { events.find(*event)->second.push_back(cb); } } } 这个叫它: void trigger(std::string event) { Isolate* isolate = V8Interface::getCurrent()->getIsolate(); Locker locker(isolate); HandleScope scope(isolate); if(events.count(event)) { for(callback cb : […]