nodeJs配置
1. vi /etc/profile
export NODE_HOME=/opt/node-v6.9.1-linux-x64
export PATH=$PATH:$NODE_HOME/bin
export NODE_PATH=$NODE_HOME/lib/node_modules
2. 使生效
# . /etc/profile
注意: . 和 /etc/profile 有空格
或者:
让/etc/profile文件修改后立即生效 ,可以使用如下命令:
# source /etc/profile
遇到一个问题: 打开新终端后, npm 不能用。
参考 : http://www.oschina.net/question/942236_162558%3Fsort%3Dtime
在 ~/.bashrc 最下面添加:
export NODE_HOME=/opt/node-v6.9.1-linux-x64
export PATH=$PATH:$NODE_HOME/bin
export NODE_PATH=$NODE_HOME/lib/node_modules
3.调试(已过时)
原文链接:Debug Node.js apps with node-inspector
如果你在编写Node.js代码,node-inspector是必备之选,比Node.js的内置调试器好出许多。使用起来跟Chrome的javascript调试器很相似。
使用npm安装:
$ npm install -g node-inspector
然后需要通过浏览器连接到node-inspector,需要启动inspector服务:
$ node-inspector &
最后以debug模式运行node.js应用:
$ node --debug app.js
通过URL http://127.0.0.1:8080/debug?port=5858 就可以进行调试了。
如果 node-inspector 安装失败,可能是依赖没有安装, 尝试使用:
npm info node-inspector
npm i -g node-inspector@其它版本
3原生调试
可以使用原生调试.
如果是 node执行, 添加 debug参数 , node debug main.js
如果是 npm 执行, 在 package.json 的 script 中修改, 如: build : "node debug build/build.js"
然后在Js文件中使用 debugger; 就可以了.
参考 : http://www.cnblogs.com/moonz-wu/archive/2012/01/15/2322120.html
最新的调试方式是: https://nodejs.org/en/docs/inspector/
node --inspect-brk a.js 参数
打开: chrome://inspect/ 即可.
https://juejin.im/entry/5ae2c301518825672b037686
4. await 使用
(async function () {
//必须在这里使用 await 关键字。
})()
// 在外面使用 await 会报错。
Promise 方式实现串行执行:
//串行化执行。
//chain_filter:参数: index, prevResult ,返回下一个Promise,如果不返回下一个Promise,则退出。
jv.line = function (chain_filter) {
return new Promise(function (resolve) {
var _exec = function (index, prevResult) {
var current = chain_filter(index,prevResult);
if (!current) {
return resolve(index,null);
} current.then(function (res) {
_exec(index + 1, res);
});
}; _exec(0,true);
});
}; var fetchData = function(index){
return new Promise(function(r){
jv.post("").then(list){
if( !list.length){ r(false) ;}
//save data.
//返回值 表示 prevResult
r( list.length == take );
}
});
} jv.line( function( index , prevResult ){
if( prevResult){
return fetchData(index);
}
});
5. mongodb vs mongoose
看依赖, mongoose 依赖 mongodb , mongodb 依赖 mongo-core
尽量使用 mongodb , 最贴近数据库.
mongoose 驱动,封装的太严重, 就像Java封装一样. 比如 : 插入的时候, 额外增加 _v 属性. Collection 需要定义 Schema , 集合名称强制使用复数.
nodeJs配置的更多相关文章
- nodejs配置及cmd常用操作
一.cmd常用操作 1.返回根目录cd\ 2.返回上层目录cd .. 3.查找当前目录下的所有文件dir 4.查找下层目录cd window 二.nodejs配置 Node.js安装包及源码下载地址为 ...
- nodeJs配置相关以及JSON.parse
nodeJs配置相关 实际上说应用相关更好吧,我不是很懂. 今天在工作中,被同事解决了一个问题,虽然多花了一些额外时间,但长痛不如短痛嘛 实际上的问题就是npm run target等命令可以,但是n ...
- nodejs配置简单HTTP服务器
1.介绍 http-server 是一个简单的零配置命令行HTTP服务器, 基于 nodeJs. 如果你不想重复的写 nodeJs 的 web-server.js, 则可以使用这个. 2.安装 npm ...
- Nodejs 配置+基础
Nodejs + NPP 配置. http://blog.csdn.net/foruok/article/details/48366765 NPM的全称是Node Package Manager,它就 ...
- visual studio code 调试nodejs 配置简单HTTP服务器
介绍 Visual Studio Code是一个轻量级的Web集成开发环境on Linux,Mac and Windows,特别是作为前端人员来了, 多了一个可供选择的生产力工具IDE,调试js代码简 ...
- nodejs配置nginx 以后链接mongodb数据库
服务器 :windows server2008 R2 反向代理 :nginx 1.15.1 for window 64位 数据库:mongodb 4 64位 使用框架express 首先下载nodej ...
- apache2 的https配置和代理https后端nodejs配置
先进入 /usr/local/apache2/conf 目录 修改 vim httpd.conf 把下面的去掉注释 LoadModule proxy_module modules/mod_pro ...
- nodejs配置与入门
Node.js 笔记(一) nodejs.npm.express安装 http://blog.csdn.net/haidaochen/article/details/7257655 Windows平台 ...
- nodejs 配置服务自启动
1安装包 输入以下命令,安装需要的包 npm install node-windows -g 2编写自启动js 在目标server.js目录下新建auto_start_nodejs.js文件,将以下j ...
随机推荐
- Cas 服务器 下载、编译及部署
一直想把公司运营的项目的各个子项的认证及授权统一到Cas上,从有想法到现在快一年的时间了.现在才正式着手,有兴趣的朋友一起交流学习一下.具体项目的细节不便透露,整合的大体思路为:1.开发部署Cas服务 ...
- [20181220]使用提示OR_EXPAND优化.txt
[20181220]使用提示OR_EXPAND优化.txt --//链接http://www.itpub.net/thread-2107240-2-1.html,http://www.itpub.ne ...
- C#解析XML 例子二
<checkResult> <item> <fmId>XX0001</fmId> <fmItemId>20000RT</fmItemI ...
- Android Studio移除模块
一.打开文件菜单下的项目结构 二.在项目结构中选中模块,点击-号,然后删除 三.删除本地文件,移除模块成功
- 简单易懂的程序语言入门小册子(6):基于文本替换的解释器,引入continuation
当我写到这里的时候,我自己都吃了一惊. 环境.存储这些比较让人耳熟的还没讲到,continuation先出来了. 维基百科里对continuation的翻译是“延续性”. 这翻译看着总有些违和感而且那 ...
- UGUI ContentSizeFitter之Button根据Text自适应
环境 Unity3D 5.3.6f1 练习地址:https://github.com/zhaoqingqing/UGUIDemo 布局放在Layout文件夹 文档:https://docs.unit ...
- 【Git学习二】深入了解git checkout命令
检出命令(git checkout)是Git最常用的命令之一,同时也是一个很危险的命令,因为这条命令会重写工作区.检出命令的用法如下: 用法一:git checkout[-q][<commit& ...
- nuxt框架Universal和Spa两种render mode的区别
如下图,官网上对于Universal 和 Spa 两种render mode的区别,并没有加以说明,相信大多数人跟我一样有点懵,不知道选什么好.虽然两个模式创建的项目看不出区别. 先给出推荐选项: U ...
- mabatis insert into on duplicate key
一.mabatis实现saveOrUpdate功能 <insert id="insert" parameterType="hystrixconfigdo" ...
- springcloud(十五):Spring Cloud 终于按捺不住推出了自己的服务网关 Gateway
Spring 官方最终还是按捺不住推出了自己的网关组件:Spring Cloud Gateway ,相比之前我们使用的 Zuul(1.x) 它有哪些优势呢?Zuul(1.x) 基于 Servlet,使 ...