前端自动化开发之Node.js的环境搭建教程


Posted in Javascript onApril 01, 2017

一、为什么我们前端自动化开发

相信任何学开发的,不管学什么语言,老师都这样讲过,作为一名开发人员,你最大的精力应该是放在创造力上面,don't you repeat myself 不要重复自己,而在我们开发过程中,往往存在很多大量的重复操作,所以我们需要为这些操作省去时间,腾出更多的时间来让我们创造。

而自动化开发能带来哪些自动化:

     1.自动编译(将less,sass等自动编译)

     2.自动合并(将页面引入的多个js文件,或者css文件,合并为同一个且压缩)

     3.自动刷新(IDE保存,浏览器不用刷新,自动看到效果)

     4.自动部署(自动将项目打包部署到指定目录)

     5.自动同步(能够方便实现多个浏览器窗口,同步点击,输入,调试)

有没有感觉很心动额,能够帮我们做这么多事情,所以下面我们就来搭建吧,此次搭建,包括环境搭建,工具搭建,项目架构搭建,连载,今天这篇,将环境搭建的初步,nodejs环境搭建。

二、Node.js是个什么东西?

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. 
Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient. 
Node.js' package ecosystem, npm, is the largest ecosystem of open source libraries in the world.

翻译一哈就是:Node.js是一个基于Chrome V8引擎的javascript的运行环境,其使用了事件驱动,非阻塞I/O模型,非常轻便高效,其包管理工具npm,是全球最大的开源库生态系统。

意思就是,本来浏览器在显示我们看到的网站的时候,会做很多事情,页面渲染,js渲染等等,然后node把其中js渲染的引擎拿出来,并且使用了谷歌的V8,然后在其外面又封装了一层api,让其拥有了文件读写,网络等操作,提供了一个服务端的运行环境,但却是运行的javascipt。所以说nodejs给前端开发行业带来了一场工业革命。

三、安装Node.js

安装有多种方式,,https://nodejs.org/en/ 可以直接在官网,下载安装版安装,这种方式很简单粗暴,下一步就解决,就不多介绍了,介绍另一种方式,nvm安装,因为有时我们在使用过程中,可能要用多种版本的node,而nvm可以让我们在使用过程方便的切换的使用版本。

第一步下面NVM的包,https://github.com/coreybutler/nvm-windows/releases ,我们选择第一个:nvm-noinstall.zip 下载完成后解压到一个地方,比如: C:\dev\nvm 里面的文件列表是这样的:elevate.cmd、elevate.vbs、install.cmd、LICENSE、nvm.exe

双击 install.cmd 然后会让你输入”压缩文件解压或拷贝到的一个绝对路径” 先不用管它,直接回车,成功后,会在C盘的根目录生成一个settings.txt的文本文件,把这个文件剪切到C:\dev\nvm目录中,然后我们把它的内容修改成这样:

root: C:\dev\nvm 
path: C:\dev\nodejs 
arch: 64 
proxy: none

然后我们开始配置环境变量了,因为刚刚点击了install.cmd的文件,那么会在环境变量的系统变量中,生成两个环境变量:NVM_HOME 和NVM_SYMLINK 我们开始修改这两个变量名的变量值:NVM_HOME的变量值为:C:\dev\nvm; NVM_SYMLINK的变量值为:C:\dev\nodejs

然后我们配置PATH的环境变量,为了添加%NVM_SYMLINK%,%NVM_HOME%,

打开cmd,输入命令nvm -v看到版本信息,就说明安装成功了

然后下载nodejs,输入命令,nvm install lastest就可以下载最新版本的node,如果要指定版本,也可以nvm install 6.4.0,如果电脑是32位的,注意在后面加上32,nvm install 6.4.0 32,因为默认是64位的

四、npm的安装

我们安装的每个node版本中已经自带了一个npm,但是由于我们可能会有切换node版本的时候,这时为了统一起见,我们需要安装一个全局的npm

首先我们进入命令模式,输入 npm config set prefix "C:\dev\nvm\npm" 回车,这是在配置npm的全局安装路径,然后在用户文件夹下会生成一个.npmrc的文件,用记事本打开后可以看到如下内容:prefix=C:\dev\nvm\npm

然后继续在命令中输入: npm install npm -g 回车后会发现正在下载npm包,在C:\dev\nvm\npm目录中可以看到下载中的文件,以后我们只要用npm安装包的时候加上 -g 就可以把包安装在我们刚刚配置的全局路径下了。

我们为这个npm配置环境变量: 变量名为:NPM_HOME,变量值为 :C:\dev\nvm\npm

在Path的最前面添加; %NPM_HOME%,注意了,这个一定要添加在 %NVM_SYMLINK%之前,所以我们直接把它放到Path的最前面

最后我们新打开一个命令窗口,输入npm -v ,此时我们使用的就是我们统一下载的npm包了。

同样的我们还可以安装cnpm工具,它是中国版的npm镜像库,地址在这里:https://cnpmjs.org/,也是npm官方的一个拷贝,因为我们和外界有一堵墙隔着,所以用这个国内的比较快,淘宝也弄了一个和npm一样的镜像库,http://npm.taobao.org/,它和官方的npm每隔10分钟同步一次。安装方式:

npm install -g cnpm --registry=http://r.cnpmjs.org

或者用淘宝的npm install -g cnpm --registry=https://registry.npm.taoba.org

安装好了cnpm后,直接执行cnpm install 包名比如:cnpm install bower -g 就可以了。-g只是为了把包安装在全局路径下。如果不全局安装,也可以在当前目录中安装,不用-g就可以了。

五、nrm安装

什么是nrm?

nrm就是npm registry manager 也就是npm的镜像源管理工具,有时候国外资源太慢,那么我们可以用这个来切换镜像源。
我们只要通过这个命令: npm install -g nrm 就可以实现安装。

注意: -g可以直接放到install的后面,我们以后也最好这样用,因为这样用,我们可以在cmd中上下箭头切换最近命令的时候,容易修改,更方便操作。安装完成后,我们就可以使用了。

命令:nrm ls 用于展示所有可切换的镜像地址

命令:nrm use cnpm 我们这样就可以直接切换到cnpm上了。当然也可以按照上面罗列的其他内容进行切换。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
Javascript访问器属性实例分析
Dec 30 Javascript
javascript实现动态统计图开发实例
Nov 21 Javascript
Jquery实现纵向横向菜单
Jan 24 Javascript
JS通过Cookie判断页面是否为首次打开
Feb 05 Javascript
深入理解setTimeout函数和setInterval函数
May 20 Javascript
jQuery如何防止Ajax重复提交
Oct 14 Javascript
Vuejs在v-for中,利用index来对第一项添加class的方法
Mar 03 Javascript
Next.js项目实战踩坑指南(笔记)
Nov 29 Javascript
webpack-mvc 传统多页面组件化开发详解
May 07 Javascript
解决layui 三级联动下拉框更新时回显的问题
Sep 03 Javascript
Vue中多元素过渡特效的解决方案
Feb 05 Javascript
vue实现标签云效果的示例
Nov 09 Javascript
ES6新特性之数组、Math和扩展操作符用法示例
Apr 01 #Javascript
手机端转换rem适应
Apr 01 #Javascript
ES6新特性之变量和字符串用法示例
Apr 01 #Javascript
ES5学习教程之Array对象
Apr 01 #Javascript
jq checkbox 的全选并ajax传参的实例
Apr 01 #Javascript
js实现音频控制进度条功能
Apr 01 #Javascript
ES6(ECMAScript 6)新特性之模板字符串用法分析
Apr 01 #Javascript
You might like
smarty表格换行实例
2014/12/15 PHP
php从完整文件路径中分离文件目录和文件名的方法
2015/03/13 PHP
php监测数据是否成功插入到Mysql数据库的方法
2016/11/25 PHP
PHP使用curl_multi实现并发请求的方法示例
2018/04/29 PHP
php实现文章评论系统
2019/02/18 PHP
不间断滚动JS打包类,基本可以实现所有的滚动效果,太强了
2007/12/08 Javascript
js鼠标滑过弹出层的定位IE6bug解决办法
2012/12/26 Javascript
HTML页面弹出居中可拖拽的自定义窗口层
2014/05/07 Javascript
escape编码与unescape解码汉字出现乱码的解决方法
2014/07/02 Javascript
jQuery判断对象是否存在的方法
2015/02/05 Javascript
关于获取DIV内部内容报错的原因分析及解决办法
2016/01/29 Javascript
Bootstrap Modal对话框如何在关闭时触发事件
2016/12/02 Javascript
微信小程序 五星评分(包括半颗星评分)实例代码
2016/12/14 Javascript
jquery实现数字输入框
2017/02/22 Javascript
jQuery插件HighCharts实现的2D堆条状图效果示例【附demo源码下载】
2017/03/14 Javascript
在vue.js中抽出公共代码的方法示例
2017/06/08 Javascript
nodejs中安装ghost出错的原因及解决方法
2017/10/23 NodeJs
浅谈react-router HashRouter和BrowserRouter的使用
2017/12/29 Javascript
微信小程序语音同步智能识别的实现案例代码解析
2020/05/29 Javascript
Python求导数的方法
2015/05/09 Python
Python实现 PS 图像调整中的亮度调整
2019/06/28 Python
python 生成任意形状的凸包图代码
2020/04/16 Python
Django微信小程序后台开发教程的实现
2020/06/03 Python
HTML5添加鼠标悬浮音响效果不使用FLASH
2014/04/23 HTML / CSS
澳大利亚首个在线预订旅游网站:Wotif
2017/07/19 全球购物
NICKIS.com荷兰:设计师儿童时装
2020/01/08 全球购物
用C#语言写出在本地创建一个UDP接收端口的具体过程
2016/02/22 面试题
会展策划与管理专业大学生职业生涯规划
2014/02/07 职场文书
感恩教育活动总结
2014/05/05 职场文书
招股说明书范本
2014/05/06 职场文书
导游词300字
2015/02/13 职场文书
2015年乡镇平安建设工作总结
2015/05/13 职场文书
2016幼儿教师自荐信范文
2016/01/28 职场文书
2019年销售部季度工作计划3篇
2019/10/09 职场文书
详解nodejs内置模块
2021/05/06 NodeJs
Python机器学习之基于Pytorch实现猫狗分类
2021/06/08 Python