CoffeeScript – configurationSublimeText作为一个简单的IDE

我是CoffeeScript的新手,我想用SublimeText来试验它。 理想情况下,我想模仿小提琴沙拉优秀的在线编辑function – 特别是我想看到输出 – 即这样 console.log 'Hello World' 实际上在控制台中显示“Hello World”… 我在Windows上,并按照这些说明 ,并使用以下“生成”文件: { "cmd": ["coffee.cmd","-c","$file"], "file_regex": "^(…*?):([0-9]*):?([0-9]*)", "selector": "source.coffee" } 这让我尽可能编译咖啡文件到JavaScript,但没有进一步。 顺便说一句,我不禁想知道为什么这么难。 我热衷于学习(直到这一点),我不认为自己是一个白痴,但似乎Web应用程序的发展几乎故意深奥和过度。 帮助赞赏。

couchbase集群和nodejs分布式架构

我正在开发一个分布式(多进程)体系结构的nodejs框架。 它可以将几个物理服务器与nodejs应用程序集成在一起。 只是想知道我是否可以在物理服务器上部署nodejs应用程序,同时我可以在同一台物理服务器上安装一个couchbase。 从而使多物理服务器上的节点应用程序组成分布式系统,并在多物理服务器上安装沙发数据库来组成集群。 或者我必须将couchbase安装到单独的物理服务器(不是在同一个节点应用程序所在的服务器上)来构build群集? 您的评论欢迎 更新的问题

grunt:观看并同步文件

我想运行一个本地同步守护进程。 它应该看src目录,并将任何更改的文件复制到dst目录。 在src有很多子目录,所以应该保留相对path。 dst中所有必要的子目录都已创build。 我只想过滤 *.js文件。 我find了一个咕噜声同步工具。 文档太短,我甚至不知道它是否适合我。 这是我的Gruntfile : module.exports = function (grunt) { grunt.initConfig({ sync: { main: { files: [{ cwd: src, src: ['**/*.js'], dest: dst }] } } }); grunt.loadNpmTasks('grunt-sync'); grunt.registerTask('default', 'sync'); }; 当我运行咕噜声时,我看不到任务。 Grunt冻结了几秒钟,然后复制所有文件并退出。 我想要一个手表同步守护进程。

Jade助手为FontAwesome

我想在Express.js jade模板中写一些FontAwesome帮手,所以我在app.js做了: app.locals.icon = function(icon){ return '<i class="fa fa-' + icon + '"></i>'; }; 并在模板中调用: block content h1= title p Welcome to #{title} = icon('users') 但是,它返回给我转义的HTML代码。 写这种帮手的好习惯是什么? 如何返回原始HTML?

如何检查当前密码和(如果正确)使用Passport.js本地策略更新密码

我需要编写普通的代码来检查通过表单提交的当前用户密码值,看看它是否与数据库中的现有密码匹配,如果是,请将密码更新为通过同一表单提交的新密码值。 然而,我无法find任何使用Passport.js的方法。 任何人都可以build议如何我可以做到这一点在我的用户控制器下面,如果有任何帮助function提供的护照,我应该使用这个,以及如何做到这一点哈希和咸的密码? 这是我的代码: // Form Submitted req.body = { _id: '5294198b7b35ad2794000001', email: 'testusera1@abc.net', name: 'John Smith', provider: 'local', username: 'ab123', current_password: 'currentpassword', new_password: 'newpassword' } // Route app.put('/users/me', users.update); // Controller var mongoose = require('mongoose'), User = mongoose.model('User'), _ = require('underscore'), passport = require('passport'), LocalStrategy = require('passport-local').Strategy; exports.update = function(req, res) { var user […]

第一次找不到模块

我正在为我的桌面应用程序使用node-webkit引擎。 这是我的文件的结构: app/ |- scripts/ |- librecraft.js |- index.html |- package.json |- libre.js 应用程序/ index.html的 <!DOCTYPE html> <!– …. –> <script>var libre = require('./libre.js');</script> <script src="scripts/librecraft.js"></script> 应用程序/脚本/ librecraft.js libre.doSomething(); 应用程序/ libre.js exports.doSomething = function () { return 42 }; 问题 当我运行nw.exe并nw.exe打开app/index.html时, node-webkit找不到./libre.js模块。 但是,当我刷新(与正确的刷新button)它神奇的作品。 为什么?

HAProxy + Node.js&Express不转发IP地址

我试图让HAProxy通过使用用户的IP地址: option forwardfor 在我的haproxy.cnf 但由于某些原因,我的快递没有返回IP地址。 这是我在Node.js中使用的代码: var usrIP = "0"; if( req.connection.remoteAddress !== null || req.connection.remoteAddress !== "null" || req.connection.remoteAddress.length > 1 ) { usrIP = req.connection.remoteAddress; } 任何想法可能是错的?

couchbase群集的读写速度

我使用nodejs来访问couchbase集群。 只是想知道couchbase的读/写速度是否足够快,我可以把couchbase集群当作内存数组/列表? 据我所知,couchbase集群的通信方式是socket。 您的评论欢迎

“肯定键入的”NodeJS + Express定义文件有错误

我正在尝试将具有NodeJS + ExpressJS的项目转换为打字稿。 我从Definitely Typed获得了定义文件,但是他们似乎有很多错误: export interface ClientRequest extends events.NodeEventEmitter, stream.WritableStream { // Extended base methods write(str: string, encoding?: string, fd?: string): boolean; write(buffer: NodeBuffer): boolean; write(chunk: any, encoding?: string): void; end(data?: any, encoding?: string): void; abort(): void; setTimeout(timeout: number, callback?: Function): void; setNoDelay(noDelay?: Function): void; setSocketKeepAlive(enable?: boolean, initialDelay?: number): void; } export interface Server […]

同步asynchronous创build的承诺

我正在做一个小的nodejs程序,并且有一些麻烦知道程序的所有asynchronous操作何时完成。 目前,该程序执行以下步骤: 1 /用一些参数产生一个进程。 这个过程将在其stdout上打印数据。 2 /听取进程标准输出“数据”事件,每次打印某些东西时,程序会调用一个函数(我们将称之为“进程”),使用这些数据。 3 /这个过程函数将最终将数据插入到mongo数据库并发送消息给amqp服务器。 3 /当没有更多数据时,由于与amqp和mongo数据库的连接仍然存在,所以程序空闲,所以我需要知道所有工作何时能够closures连接。 所以,我试图使用when.js来使用promise,但是我不能让它为我想要实现的目的而工作。 我让“process”函数返回一个promise,当mongodb insert和amqp消息发送完成后,这个promise就会被parsing。 在我的程序中,我正在创build一个数组,它将接收所有可以调用when.all()以了解何时全部parsing的承诺。 但是,因为当生成的进程将数据打印到它的stdoutstream时,我正在asynchronous创buildpromise,所以调用when.all()是由一个看起来立即解决的空数组构成的。 这里是一个代码示例,说明我实现了什么: var when = require('when') , _ = require('lodash') , cp = require('child_process'); var promises = []; function process(data) { var deferred = when.defer(); setTimeout(function () { deferred.resolve(true); }, 3000); // Let's say we need 3 seconds to process […]