欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

在Linux(centos7)下Node和gulp插件安装步骤

程序员文章站 2022-05-30 14:41:48
...

第一步:安装Node版本

在Linux(centos7)下Node和gulp插件安装步骤
1)下载node8.X.X以上的版本
2)解压文件node-v8.9.4-linux-x64.tar.xz
3)进入node-v8.9.4-linux-x64目录
4)设置node和npm为全局变量

#ln -s /home/项目目录/node-v8.3.0-linux-x64/bin/node    /usr/local/bin/node
#ln -s /home/项目目录/node-v8.3.0-linux-x64/bin/npm     /usr/local/bin/npm

5)执行下以下命令

#npm install -g  nrm
#npm install -g  gulp

6)设置nrm和gulp为全局变量

#ln -s /home/项目目录/node-v8.3.0-linux-x64/bin/nrm     /usr/local/bin/nrm
#ln -s /home/项目目录/node-v8.3.0-linux-x64/bin/gulp     /usr/local/bin/gulp

第二步:npm指向淘宝镜像

#nrm use taobao

第三步:创建package.json文件

{
  "name": "test",
  "version": "1.0.0",
  "description": "vue",
  "author": "bxcn",
  "private": true,
  "scripts": {},
  "dependencies": {},
  "devDependencies": {
    "babel-cli": "^6.26.0",
    "babel-core": "^6.26.0",
    "babel-preset-es2015": "^6.24.1",
    "gulp": "^3.9.1",
    "gulp-autoprefixer": "^4.1.0",
    "gulp-clean-css": "^3.9.2",
    "gulp-imagemin": "^4.0.0",
    "gulp-load-plugins": "^1.5.0",
    "gulp-requirejs-optimize": "^1.2.0",
    "gulp-sass": "^3.1.0",
    "gulp-uglify": "^3.0.0",
    "require-dir": "^0.3.2"
  },
  "engines": {
    "node": ">= 4.0.0",
    "npm": ">= 3.0.0"
  },
  "browserslist": [
    "> 1%",
    "last 2 versions",
    "not ie <= 8"
  ]
}

第三步:进入项目根目录安装gulp插件

方式一自动安装:

#npm install

方式二单个安装:

#npm install --save-dev  gulp
#npm install --save-dev  gulp-sass
#npm install --save-dev  gulp-imagemin
#npm install --save-dev  gulp-uglify
#npm install --save-dev  gulp-autoprefixer
#npm install --save-dev  gulp-clean-css
#npm install --save-dev  gulp-load-plugins
#npm install --save-dev  require-dir
#npm install --save-dev  babel-cli
#npm install --save-dev  babel-core
#npm install --save-dev  babel-preset-es2015

第四步:创建 .babelrc文件并放入以下内容

{"presets": ["es2015"]}

第五步:创建gulpfile.babel.js文件,复制以下内容

import gulp from 'gulp';
import gulpLoadPlugins from 'gulp-load-plugins';
const $ = gulpLoadPlugins();

gulp.task('js:prod', () => {
  gulp.src(['./src/Public/web/js/**/*.js']) // src目录是项目的目录
  .pipe($.uglify({
    //mangle:true,//类型:Boolean 默认:true 是否修改变量名
    //mangle: {except: ['app', 'init', 'require', 'exports', 'module', '$']}, //排除混淆关键字
    compress: true, //类型:Boolean 默认:true 是否完全压缩
  }))
  .pipe(gulp.dest('./build/Public/web/js/'))
});

gulp.task('images:prod', () => {
  return gulp.src(['src/Public/web/images/**/*.*'])
  .pipe($.imagemin())
  .pipe(gulp.dest('./build/Public/web/images/'));
});

gulp.task('sass:prod', () => {
  return gulp.src(['src/Public/web/sass/**/*.scss'])
  .pipe($.sass())
  .pipe($.autoprefixer({
    browsers: ['last 6 versions'],
    cascade: false
  }))
  .pipe($.cleanCss())
  .pipe(gulp.dest('./build/Public/web/css/'));
});

gulp.task('prod', [ 'sass:prod', 'images:prod',  'js:prod'], () => {
});

第六步:发版时执行命令

执行生产命令:gulp prod;

常见问题:

解决linux下sudo更改文件权限报错xxxis not in the sudoers file. This incident will be reported.
参考:http://blog.csdn.net/itpinpai/article/details/79027465

nrm切换npm源利器
参考:https://www.jianshu.com/p/5dd18d246281

linux permission denied解决方法
参考:https://jingyan.baidu.com/article/90808022fa50dbfd90c80f52.html

vi命令
参考:http://man.linuxde.net/vi

相关标签: linux gulp sass