关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用

 

工作环境:window下

在一切的最开始,安装node.js (中文站,更新比较慢http://nodejs.cn/)(外文站,最新的资料,但是打开可能比较慢https://nodejs.org/en/download/

  这里是一篇知乎的关于node.js是什么的文https://www.zhihu.com/question/33578075

  简单的来说,它是JavaScript运行环境。更加深入,无法理解事件:1、如何通过nodejs利用JavaScript写后端语言;2、node的module是什么;3、关于V8引擎;

  任何语言只要有引擎就可以跑起来,这里相当于搭建了一个静态服务器,然后在server.js中写数据的获取,npm install express。这就是一个简单的静态服务器,可以用于数据处理。http://www.expressjs.com.cn/

自行理解:

  1、nodejs是一个类似于底层的开发环境,帮助JavaScript语言让计算机理解;

  2、npm是用于管理nodejs的集成安装包;

  3、nodejs有很多模块,例如压缩文件,搭建静态服务器等,这些功能需要npm进行安装。

此文主要内容

  1、安装nodejs。

  2、安装npm,现在nodejs已经将npm集成了起来。

  3、安装cnpm,这是一个淘宝镜像文件,它的功能和npm一样,是在国内搭建的一个服务站,更新会比npm慢,但是可以基本满足开发使用,安装速度会比npm快。

  4、搭建gulp自动构建,用于检测安装包的自动架构而不是自己再一个个去写。

  5、搭建express静态服务器。

一、nodejs和npm的安装

  1.进入nodejs的官网,进行下载。注意:如果已经有安装好的版本,不可以直接安装高版本的,它会报错。可以卸载后再安装,也可以利用vnpm来进行升级。

    安装完成以后进入cmd中进行确认,它会显示安装的版本号。

  1. node --version
  2. npm --version

  2.npm和nodejs现在已经集成在了一起安装好了,npm官网https://docs.npmjs.com/,在这里可以看官方文档进行更加详细的学习。

  3.安装cnpm

  淘宝cnpm镜像https://npm.taobao.org/,-g表示进行全局安装

  1. npm install -g cnpm --registry=https://registry.npm.taobao.org

  我们同样可以使用如下来确定是否安装成功和版本号。

1
cnpm --version

二、安装gulp,对于主要插件进行测试

gulp中文网http://www.gulpjs.com.cn/docs/getting-started/gulp插件列表http://gulpjs.com/plugins/

先进行安装

创建一个文件夹,例如gulptest,使用命令行,我们先要进入这个文件夹中,例如cd gulptest

首先进行全局安装

  1. cnpm install gulp -g

接下来在项目文件下面进行项目开发依赖的安装

  1. cnpm install gulp --save-dev

项目文件下面会自动生成一个package.json文件用于记录项目下面的插件安装,这里我们需要查看一下有没有这行代码,一般情况下,我们对于一个项目先要进行初始化,

npm init 这是为了自动生成package.json文件

  1. "devDependencies": {
  2. "glup": "^1.0.14"
  3. },

现在来安装用于压缩html,css,js和img的插件

基本规则:cnpm install [gulp-xxxx] --save-dev,就是将插件安装起来,gulp下的插件命名都以gulp开头,插件名与插件名之间以空格隔开,如果你想要进行一次性安装的话

1
npm install gulp-htmlmin gulp-imagemin imagemin-pngcrush gulp-minify-css gulp-jshint gulp-uglify gulp-concat gulp-rename gulp-notify --save-dev

安装完成以后我们依旧可以进入项目根目录上的package.json文件中查看是否安装完成

安装完成以后要开始编写运行文件了

在根目录下面创建一个js文件,gulpfile.js文件,基础代码是

  1. var gulp = require('gulp');
  2.  
  3. gulp.task('default', function() {
  4. // 将你的默认的任务代码放在这
  5.  
  6. });

在根目录文件下命令行直接输入gulp就会默认运行这个文件中defalut代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
var gulp = require('gulp')
    htmlmin = require('gulp-htmlmin')
    imagemin = require('gulp-imagemin')
    minifycss = require('gulp-minify-css')
    uglify = require('gulp-uglify');
 
//压缩html
gulp.task('htmlmin',function(){
    //可以不在同一个目录下面
    gulp.src('./views/**/*.html')
        .pipe(htmlmin({
            removeComments:true
        }))
        .pipe(gulp.dest('./dist/views'));
});
 
//压缩js
gulp.task('uglify',function(){
    gulp.src('./static/js/**/*.js')
        .pipe(uglify())
        .pipe(gulp.dest('./dist/static/js'));
});
 
//压缩css
gulp.task('minifycss',function(){
    gulp.src('./static/css/**/*.css')
        .pipe(minifycss())
        .pipe(gulp.dest('./dist/static/css'));
});
 
//压缩图片
gulp.task('imagemin',function(){
    gulp.src('./static/images/**/*.{png,jpg,gif,ico}')
        .pipe(imagemin())
        .pipe(gulp.dest('./dist/static/images'));
});
 
//动态监听
gulp.task('watch',function(){
    gulp.src('./views/**/*.html',['htmlmin']);
    gulp.src('./static/js/**/*.js',['uglify']);
    gulp.src('./static/css/**/*.html',['minifycss']);
    gulp.src('./static/images/**/*.{png,jpg,gif,ico}',['imagemin']);
})
 
 
//合并运行任务
gulp.task('default',['htmlmin','uglify','minifycss','imagemin','watch']);

  gulp.task('taskname',fuc);第一个参数时对任务进行命名,这个是可以随便命名的,在合并任务里面进行任务运行的时候添加的是对应的taskname,第二个参数时运行函数。

关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用的更多相关文章

  1. node.js 和 npm/cnpm/nrm 的安装

    node.js 和 npm/cnpm/nrm 的安装 安装 node.js.去 官网 下载,下载 LTS 版本的.安装时一路点确定,不要改动任何设置. 在 git-bash 或是 cmd 下,输入 n ...

  2. 安装node.js 和 npm 的完整步骤

    vue 生命周期 1,beforeCreate 组件刚刚被创建 2,created 组件创建完成 3,beforeMount 挂载之前 4,mounted 挂载之后 5,beforeDestory 组 ...

  3. Vue项目一、node.js和npm的安装和环境搭建

    一.为什么安装node.js及npm npm npm是Node.js的包管理工具(package manager),是全球最大的生态系统,同过npm可以找到很多丰富的插件来满足项目的需求. a1.现在 ...

  4. 在Linux Mint上安装node.js和npm

    1.安装Node.js 前端开发过程中,很多项目使用npm的http-server的模块来运行一个静态的服务器,我个人在Dell的笔记本上安装的是Linux Mint最新版本,所以想尝试一下在Linu ...

  5. 在Windows平台上安装Node.js及NPM模块管理

    1. 下载Node.js官方Windows版程序:http://nodejs.org/#download    从0.6.1开始,Node.js在Windows平台上提供了两种安装方式,一是.MSI安 ...

  6. node.js的npm安装

    我不打算引进node.js的npm安装,但发现node.js通过管理一些包npm实现,或给一个简短的npm. 1.npm什么        npm是一个node包管理和分发工具,已经成为了非官方的公布 ...

  7. Node.js、npm、vue-cli 的安装配置环境变量

    我安装node.js是为了学习vue,需要用到npm,所以就把node.js安装了,安装node.js会带有npm的安装. 在安装node.js之前,我们需要了解以下三个内容. npm: Nodejs ...

  8. Linux(CentOS)安装Node.JS和npm的两种方式(yum安装和源码安装)

    yum安装 yum安装是将yum源中的rpm包下载到本地,安装这个rpm包.这个rpm包是别人编译安装好的二进制包.这种方式方便快捷,特别是不用考虑包依赖. 0.了解linux版本 通过 uname ...

  9. angular2.0学习笔记1.开发环境搭建 (node.js和npm的安装)

    开发环境, 1.安装Node.js®和npm, node 6.9.x 和 npm 3.x.x 以上的版本. 更老的版本可能会出现错误,更新的版本则没问题. 控制台窗口中运行命令 node -v 和 n ...

随机推荐

  1. python学习心得第一章

    初始python 1什么是程序 计算机程序是一组执行某种动作的的指令.和那些电路.芯片.显卡.硬盘等不同,它不是计算机本身可以触摸的部分,而是隐藏在背后运行在硬件上面的东西.程序就是一系列告诉没有知觉 ...

  2. react-jsx

    本文同步至微信公众号http://mp.weixin.qq.com/s?__biz=MzAxMzgwNDU3Mg==&mid=402252760&idx=1&sn=6952c4 ...

  3. C++ MFC打开文件的流程

    打开文件的步骤如下: 弹出打开文件对话框 -> 获取选择的文件,并将文件显示在视图中. 我们程序中经常需要定制的操作如下: 1. 定制弹出的文件对话框,例如需要修改打开文件的类型或扩展名 2. ...

  4. CRM域用户误删恢复

    记录一下: 不小心将CRM用户在域中删除了(CRM中未删除),直接新建一个同样账号的域用户然后尝试在CRM中登录报“invalid user”错误,一番检查发现从2011版本开始CRM中不单记录了用户 ...

  5. Opencl 并行求和

    上周尝试用opencl求极大值,在网上查到大多是求和,所谓的reduction算法.不过思路是一样的. CPP: ; unsigned ; ; ; int nGroup = nGroupSize / ...

  6. windows访问lnmp配置的虚拟域名

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://linuxzkq.blog.51cto.com/9379412/1630217 实 ...

  7. [知识整理]Java集合

    Mark Java集合图

  8. 数据库mysql优化方案

    1.创建索引对于查询占主要的应用来说,索引显得尤为重要.很多时候性能问题很简单的就是因为我们忘了添加索引而造成的,或者说没有添加更为有效的索引导致.如果不加索引的话,那么查找任何哪怕只是一条特定的数据 ...

  9. mmap和shm共享内存的区别和联系

    共享内存的创建 根据理论: 1. 共享内存允许两个或多个进程共享一给定的存储区,因为数据不需要来回复制,所以是最快的一种进程间通信机制.共享内存可以通过mmap()映射普通文件(特殊情况下还可以采用匿 ...

  10. MySQL的存储引擎

    MySQL的一个重要特性就是支持插件式存储引擎.其存储引擎接口定义良好,有兴趣的开发者可以通过阅读文档编写自己的存储引擎. 接下来简单介绍一下MySQL的常见存储引擎: 一.MyISAM MySQL ...