码迷,mamicode.com
首页 > Web开发 > 详细

Nodejs和前端自动化

时间:2018-01-25 19:16:52      阅读:217      评论:0      收藏:0      [点我收藏+]

标签:命令   hint   order   change   sage   task   gem   重命名   dimen   

安装Node.js

直接下载,安装

npm

  1. 安装
    较新版本Node自带,基本不用自己装
  2. 初始化
    npm init之后一路next
  3. 安装依赖
  • npm install --production安装package.json里已经声明了依赖(只安装dependencies)
  • npm install安装package.json里已经声明了依赖(包括:devDependencies和dependencies)

gulp

  1. 全局安装gulp(‘-g‘:全局安装)
    npm install gulp -g
  2. 下载要用到的插件(‘-g‘:全局安装)
    npm install gulp-minify-css gulp-jshint gulp-concat gulp-uglify gulp-imagemin gulp-notify gulp-livereload gulp-rename -g
  3. 添加一个gulp的依赖
    npm install gulp --save-dev
    项目依赖分两种,一个就是普通的项目依赖比如bootstrap(--save),还用一种只是开发阶段需要用的,这种属于开发依赖比如gulp,开发依赖最终记录在devDependencies节点里面(--save-dev)
    压缩css(gulp-minify-css)
    js代码校验(gulp-jshint)
    合并js文件(gulp-concat)
    压缩js代码(gulp-uglify)
    压缩图片(gulp-imagemin)
    文件重命名 (gulp-rename)
    自动刷新页面(gulp-livereload)
    更改提醒(gulp-notify)
    合并js顺序(gulp-order)
  4. 构建gulpfile.js
    在项目的根目录,新建一个gulpfile.js的文件,这个是gulp的主执行文件,且文件名是固定的,不能修改,gulp命令执行的时候,会去找这个文件。
  5. 执行gulp
    gulp输入gulp即可

gulpfile.js:

//引入插件
var gulp = require(‘gulp‘),
   // minifycss = require(‘gulp-minify-css‘),
   uglify = require(‘gulp-uglify‘), //压缩js代码
   rename = require(‘gulp-rename‘), //文件重命名
   concat = require(‘gulp-concat‘), //合并js文件
   notify = require(‘gulp-notify‘), //更改提醒
   livereload = require(‘gulp-livereload‘); //自动刷新页面

//js代码校验、合并和压缩(类似jquery的链式操作)
gulp.task(‘scripts‘, function() {
   return gulp.src(‘src/**/*.js‘) //源文件
       .pipe(concat(‘empty_dimension.js‘))  //合并js文件,empty_dimension.js为合并的文件名称
       .pipe(gulp.dest(‘dist‘))  //合并后文件存放位置
       .pipe(rename({
           suffix: ‘.min‘
       }))
       .pipe(uglify())         //执行压缩任务
       .pipe(gulp.dest(‘dist‘))  //压缩后文件存放位置
       .pipe(notify({    //操作结束后提示
           message: ‘Scripts task complete‘
       }));
});
// 默认任务,这里完全可以是多个任务,比如压缩CSS,压缩图片,压缩js等
gulp.task(‘default‘,[‘watch‘], function() {
   gulp.start(‘scripts‘);
});
// 监听
gulp.task(‘watch‘, function() {
   // 监听 .js文件改动,一旦改动就会自动压缩合并
   gulp.watch(‘src/**/*.js‘, [‘scripts‘]);
   // Create LiveReload server(用来自动刷新浏览器)
   livereload.listen();
   // Watch any files in dist/, reload on change
   gulp.watch([‘dist/**‘]).on(‘change‘, livereload.changed);
});

Nodejs和前端自动化

标签:命令   hint   order   change   sage   task   gem   重命名   dimen   

原文地址:https://www.cnblogs.com/jffun-blog/p/8352725.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!