npm-npmscript-gulp-webpack

2017-12-11  本文已影响0人  魔王卡卡

题目1: 如何全局安装一个 node 应用?

npm install -g <pkg>

题目2: package.json 有什么作用?

package.json 存储在项目的根目录下,内部保存了项目的相关信息(名称、版本等)以及该项目的依赖信息(生产环境依赖、开发环境依赖)

{
  "name": "webpack-demo",  // 项目名称
  "version": "1.0.0",  // 项目版本
  "description": "",  // 项目描述
  "main": "index.js",  // 项目入口
  "keywords": [  // 项目关键字
      "xxx",
      "yyy"
  ],
  "scripts": {  // npm script 命令行
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",  // 项目作者
  "license": "ISC",  // 项目认证信息
  "dependencies": {  // 生产环境依赖,当安装该项目时,生产环境依赖也将同时安装
      "xxx": "^x.x.x"
  },
  "devDependencies": {  // 开发环境依赖,这些依赖仅在开发时有效
      "yyy": "^y.y.y"
  }
}

题目3: npm install --save app 与 npm install --save-dev app有什么区别?

题目4: node_modules的查找路径是怎样的?

从项目所在目录开始查找 node_modules ,如果在当前目录找不到,向上进入父级目录查找,并以此类推,直到查找到所需文件或找到根目录下为止

题目5: npm3与 npm2相比有什么改进?yarn和 npm 相比有什么优势? (选做题目)

npm3相比npm2主要改进了依赖管理方案

yarn优点在于只要通过Yarn安装过的套件都会在本地目录产生Cache,也就是说只要安装过一次,下次重新安装都会从Cache重新读取, 安装速度会提升很多。

题目6: webpack是什么?和其他同类型工具比有什么优势?

webpack是一款模块加载器兼打包工具,它能把各种资源JS/CSS/图片等都作为模块来使用和处理。优势如下:

题目7:npm script是什么?如何使用?

npm script 是供 npm 使用的脚本命令,储存于 package.json 内的 scripts 字段内

要使用 npm script ,只需执行命令 npm run <command> 即可,部分 npm 内置的关键字(如 starttest 等)可以省略 run

题目8: 使用 webpack 替换 入门-任务15中模块化使用的 requriejs

demo

代码

题目9:gulp是什么?使用 gulp 实现图片压缩、CSS 压缩合并、JS 压缩合并

//安装插件
npm install gulp-imagemin --save-dev //图片压缩
npm install gulp-cssnano --save-dev //css压缩
npm install uglify --save-dev //js压缩
npm install gulp-jshint --save-dev //js规范检查
npm install gulp-concat --save-dev //文件合并
npm install gulp-rename --save-dev //重命名

//gulpfile.js
//引入插件
var gulp = require('gulp'),
    cssnano = require('gulp-cssnano'),
    concat = require('gulp-concat'),
    jshint = require('gulp-jshint'),
    uglify = require('gulp-uglify'),
    imagemin = require('gulp-imagemin'),
    rename = require('gulp-rename'),
 
  //css合并压缩
  gulp.task('build:css', function() {
      gulp.src('./src/css/*.css')
        .pipe(concat('merge.css'))
        .pipe(rename({
            suffix: '.min'
        }))
        .pipe(cssnano())
        .pipe(gulp.dest('dist/css/'));
  })

  //js合并压缩
   gulp.task('build:js', function() {
      gulp.src('src/js/*.js')
        .pipe(jshint())
        .pipe(jshint.reporter('default'))
        .pipe(concat('merge.js'))
        .pipe(rename({
          suffix: '.min'
        }))
        .pipe(uglify())
        .pipe(gulp.dest('dist/js/'));
  })

  //图片压缩
  gulp.task('build:image', function() {
      gulp.src('src/imgs/*')
        .pipe(imagemin())
        .pipe(gulp.dest('dist/imgs/'));
  })

gulp.task('build', ['build:css', 'build:js', 'build:image']);

//命令行
gulp build
上一篇 下一篇

猜你喜欢

热点阅读