Cmder安装笔记

官网 Github 快捷键 右键管理 添加 下载注册表文件cmdercontextenable.reg 修改注册表中程序目录地址 运行注册表 删除 下载注册表文件cmdercontextdisable.reg 运行注册表 常见问题 中文乱码: 进入Settings>Startup>Environment,添加chcp 65001变更为utf-8.重启即可 »

node常用跨平台库介绍

最近在写关于node的跨平台服务,介绍一下几个常用的跨平台库: fs-extra git地址 npm地址 fs-extra是一个针对fsAPI的扩展,弥补fs中的一些不足. 你可以同时使用fs和fs-extra: const fs = require('fs') const fse = require('fs-extra') fs-extra提供同步和异步两种API来使用. shelljs git地址 npm地址 shelljs是一款跨平台的脚本命令库,通过shelljs我们可以很方便的使用跨平台脚本命令. 除开常用的cd,rm,grep等命令以外,我们还可以使用exec命令来呼叫外部命令, »

node cli开发介绍

最近在写项目生成工具butter-cli,把vue-cli源码看了一遍,总结一下使用node做cli开发的一些点. 1.package定义 相比普通的npm项目,在package中我们需要增加bin属性以及preferGlobal属性. bin:可以指定一个或多个shell文件,node会在-g安装后自动在node目录生成对应系统的运行文件.详见package.json preferGlobal:可以指定使用命令行运行,如果本地安装时会提示警告.详见package.json 2.使用commander定义cli命令 我们使用commander来定义cli命令的参数,见butter-cli.js #!/usr/bin/env node »

mongo-org-shell操作

在使用node过程中,我们经常会使用mongoose进行对mongodb的操作.但某些时候(比如删除索引,清库等操作)我们需要手工连接mongodb进行操作,这个时候,我们就需要使用mongo-org-shell来进行对mongodb的手工操作. 注:为了安全起见,建议编写shell脚本执行对应操作. 本文中将在ubuntu 14.04中安装3.4为例进行讲解 1.安装 通常,我们安装mongodb(mongodb-org)时会自动安装以下几个包: mongodb-org-server Contains the mongod daemon »

使用promise创建分页执行任务

在实际应用中,我们总会遇到以下类似的情况: 在构建爬虫时,需要对当前页面下的所有分页爬取结果页,并在结果页爬取相关数据. 在发送结果数据时,需要按一个固定的队列数量,分次发送数据. 在执行数据库操作时,需要固定数量插入. 这种分页型任务在很多应用中都需要自己实现.下面,本文将讨论具体的实现方法: 在之前的文章中,我们使用promise的传递特性来实现中间件部分的功能.今天,我们将使用promise的特性用一个简单的函数来实现上文需要的分页任务方法. 实现思路 在promise语法中,我们拥有Promise.all方法,通过Promise.all,我们可以让一串任务(数组)同时执行, »

npm私有库搭建及配置

cnpm是由淘宝团队开发的企业内部npm私有库,它包含仓库和网站两个部分: 官方网站 cnpmjs.org - github 安装基本要求 node >= 4.3.1 Databases:支持以下类型 sqlite3 >= 3.0.2, 默认为sqlite3 MySQL >= 0.5.0, 包括mysqld和mysql cli.mysql@ »

Orc开发日志01-使用Promise实现中间件

在Orc Engine开发过程中,需要用到中间件系统(middleware).目的是帮助输入数据按中间件进行流式处理并最终输出处理结果. 实现目的 在预想中,我们通过载入一个中间件函数列表,每个函数包含输入数据及下一步的呼出内容. [function(input,next){ //do something. & call next(err,output) }] 最终,通过读取中间件函数最后一次执行的输入数据,就可以完成一个数据在中间件内部的流式处理. 实现方法 由于es6中Promise本身就可以处理类似的问题,所以我们使用Promise来连接函数和函数之间的处理. /** * Create »

ghost+nginx使用https地址时无限301的问题

1. 面临问题 在之前的文章中我们已经说明如何使用Let'S Encrypt来进行https的配置.但是在ghost中,如果网站地址配置为https会进行无限301重定向. 2. 原因分析 ghost官方配置说明里,对他们的处理方法进行了详细的说明. If you just setup SSL for your blog, and leave your url starting with http://, Ghost »

利用pako更快地传输文件

1. 介绍 1.1. pako介绍 pako是一个javascript编码的zlib高速压缩库,支持浏览器和nodejs. 你可以使用npm npm install pako 或者bower来进行安装 bower install pako 1.2. pako-demo pako-demo使用pako来在浏览器端进行文件压缩,并在服务端解压存储文件,用以节省网络传输流量. 2. 实现说明 2.1. 浏览器端 »

ESLint配置

1. 介绍 ESLint是一个用作JavaScript和JSX的语法检测插件,我们通过使用它来规范我们的前端代码.让整个团队成员的编码风格一致,以便于维护. 2. 安装 2.1. 项目内安装 安装开发依赖 npm install eslint --save-dev 定义配置文件 ./node_modules/.bin/eslint --init 如果需要react,请安装 npm install »