写node的时候,常常以为自己需要某个package,于是require了一下,结果写着写着,又没有用到,安装了某个包save了一下,最后也没用到. 一个项目写完发现整个require和dependency需要重新整理,工作量还挺大. 就想了解有没有什么比较好的自动化工具可以把我没用到的依赖从package里面去掉. 又或者直接根据我的require去重写package.json啊!~ eggjs 团队在用 https://github.com/node-modules/autod…
一.process.env process.env属性返回一个包含用户环境信息的对象. 最常见的需求,前端需要根据不同的环境(dev,prd),来调用不同的后端接口.如果用webpack,是这么做的:1)package.json里的命令: "scripts": { "dev": "cross-env NODE_ENV=development webpack-dev-server --open --hot", "build":…
GitBook是一个命令行工具(Node.js库),我们可以借用该工具使用Github/Git和Markdown来制作精美的图书,但它并不是一本关于Git的教程哟. 支持输出多种格式 GitBook支持输出多种文档格式,如: 静态站点:GitBook默认输出该种格式,生成的静态站点可直接托管搭载Github Pages服务上: PDF:需要安装gitbook-pdf依赖: eBook:需要安装ebook-convert: 单HTML网页:支持将内容输出为单页的HTML,不过一般用在将电子书格式转…
准备工作 node使用c++插件时需要使用node-gyp包,node-gyp把c++源码编译为二进制文件,js在调用二进制文件,编译后的二进制文件模块调用就和js的模块调用一样. npm install -g node-gyp 除了node-gyp还需要安装其他准备工具. 类Unix下的准备工具 在类Unix下只需在安装 g++工具 sudo apt-get install g++ ; // or sudo yum install g++ 因为在学校里我把apt-get 配置为学校的源,回来后…
环境: Node应用由模块组成,采用CommonJS模块规范. node的全局对象是global,没有window这个对象. process表示当前执行的进程,挂在global之下. CommonJS 每个文件是一个模块,有自己的作用域.执行时,我们写的代码会被自动包裹在一个function里. 在模块内部module变量代表模块本身. module.exports属性代表模块对外接口. 定义一个模块就是创建一个文件. 想在模块内部输出一些属性的话,需要把属性放到module.exports中.…
ES6标准发布后,module成为标准,标准的使用是以export指令导出接口,以import引入模块,但是在我们一贯的node模块中,我们采用的是CommonJS规范,使用require引入模块,使用module.exports导出接口. 不把require和import整清楚,会在未来的标准编程中死的很难看. require时代的模块 node编程中最重要的思想之一就是模块,而正是这个思想,让JavaScript的大规模工程成为可能.模块化编程在js界流行,也是基于此,随后在浏览器端,req…
在php,C++中都有命名空间的概念,命名空间主要是用来解决引入文件存在函数,类,变量重名的问题,在node.js中,没有命名空间这么复杂的概念,在node中,有模块的概念,也就是将功能性的代码都放在一起.然后引入,在本文件中使用.这种不会出现函数名,变量重名问题,在引入的模块中,都是以导入的方式注册的.看下面的例子: //circle.js var pi = 3.14; //计算圆的周长 exports.circle = function(r) { return 2 * pi * r; } /…
'use strict'; let http = require(`http`); http.createServer((req, res) => { console.log(req.headers[`user-agent`]); res.end(); }).listen(8888); 运行后通过电脑和手机分别访问看下图 可以看出我用的是iphone4s,哎...6plus都买不起... 在自测这一环节...这也是一大利器.…
node提供了专门读写文件的模块,文件内容都是2进制存放在内存中的 node读取文件的结果都是16进制,那么你要学会进制转换,二进制0b开头 ,八进制0开头,十六进制0x 基础知识: 1字节=8bit 一个汉字=3字节,在不同的编码下字节个数还有不同的 一个英文=1字节 buffer里面用16机制表示 Buffer.alloc(3) // 3是代表字节 创建一个有3个字节的内存空间 <Buffer 00 00 00> 默认是0x00 0x00 0x00 0x00 let buf1 = Buff…
模块可能与当前的NODE版本不和,NODE升级问题? 一切尽在掌握 1.首先设置好PATH(你安装的目录) Debian系列: sudo gedit /etc/profile Redhat系列: su -root gedit /etc/profile 2.然后 source /etc/profile 3.再然后 npm i -g n 4.安装完后 安装最新版NODE:n latest 安装稳定版NODE:n stable 安装版本号(示例):n x.x.x 选择版本号(实例):n 选择版本号:n…