vue-cli脚手架npm相关文件说明(6)build.js

下面是build/vue-loader.conf.js中相关代码和配置的说明

/*
 * npm run build 构建执行文件,主要用于生产环境
 * 建议先查阅webapck.prod.conf.js
*/

// npm和node版本检查
require(‘./check-versions‘)()

// 设置环境变量为production
// process.env 是node环境内置的变量,在命令行里可以通过 set 变量名=值的方式来设置,等价于 set NODE_ENV=‘production‘
process.env.NODE_ENV = ‘production‘

var ora = require(‘ora‘) // ora是一个命令行转圈圈动画插件,好看用的
var rm = require(‘rimraf‘) // rimraf插件是用来执行UNIX命令rm和-rf的用来删除文件夹和文件,清空旧的文件
var path = require(‘path‘)
var chalk = require(‘chalk‘) // chalk插件,用来在命令行中输出不同颜色的文字
var webpack = require(‘webpack‘)
var config = require(‘../config‘) // 项目配置文件
var webpackConfig = require(‘./webpack.prod.conf‘) // 生产环境的Webpack配置文件

var spinner = ora(‘building for production...‘) // 开启转圈圈动画
spinner.start()

// 调用rm方法,第一个参数和第二个参数分别是 ../dist 和 static,表示删除路径下面的所有文件
rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => {
  if (err) throw err // 如果删除的过程中出现错误,就抛出这个错误,同时程序终止
  // 调用webPack执行构建
  webpack(webpackConfig, function (err, stats) {
    spinner.stop()
    if (err) throw err
    process.stdout.write(stats.toString({ // stats对象中保存着编译过程中的各种消息
      colors: true, // 增加控制台颜色开关
      modules: false, // 不增加内置模块信息
      children: false, // 不增加子级信息
      chunks: false, // 允许较少的输出
      chunkModules: false // 不将内置模块的信息加到包信息
    }) + ‘\n\n‘)

    console.log(chalk.cyan(‘  Build complete.\n‘))
    console.log(chalk.yellow(
      ‘  Tip: built files are meant to be served over an HTTP server.\n‘ +
      ‘  Opening index.html over file:// won\‘t work.\n‘
    ))
  })
})

参考:http://www.cnblogs.com/ye-hcj/archive/2017/06.html

时间: 2024-11-06 23:52:15

vue-cli脚手架npm相关文件说明(6)build.js的相关文章

vue-cli脚手架npm相关文件说明(7)dev-server.js

系列文章传送门: 1.build/webpack.base.conf.js 2.build/webpack.prod.conf.js 3.build/webpack.dev.conf.js 4.build/utils.js 5.build/vue-loader.conf.js 6.build/build.js 7.build/dev-server.js 8.build/check-versions.js 9.../config/index.js 下面是build/dev-server.js中相关

vue-cli脚手架npm相关文件说明(9)config/index.js

系列文章传送门: 1.build/webpack.base.conf.js 2.build/webpack.prod.conf.js 3.build/webpack.dev.conf.js 4.build/utils.js 5.build/vue-loader.conf.js 6.build/build.js 7.build/dev-server.js 8.build/check-versions.js 9.../config/index.js 下面是config/index.js中相关代码和配

vue-cli脚手架npm相关文件说明(8)check-versions.js

系列文章传送门: 1.build/webpack.base.conf.js 2.build/webpack.prod.conf.js 3.build/webpack.dev.conf.js 4.build/utils.js 5.build/vue-loader.conf.js 6.build/build.js 7.build/dev-server.js 8.build/check-versions.js 9.../config/index.js 下面是build/check-versions.j

vue-cli脚手架npm相关文件说明(5)vue-loader.conf.js

系列文章传送门: 1.build/webpack.base.conf.js 2.build/webpack.prod.conf.js 3.build/webpack.dev.conf.js 4.build/utils.js 5.build/vue-loader.conf.js 6.build/build.js 7.build/dev-server.js 8.build/check-versions.js 9.../config/index.js 下面是build/vue-loader.conf.

vue-cli脚手架npm相关文件说明-2、webpack.prod.conf.js

下面介绍webpack.prod.conf.js中相关配置代码和配置的说明,建议先查阅build/webpack.prod.conf.js /* * Webpack 生产环境配置文件,用于生产环境执行Build * 执行Build 主要是用Webpack执行这里的配置 * 建议先查阅webapck.base.conf.js ../config/index.js */ var path = require('path') var utils = require('./utils') // 下面是u

vue.cli脚手架初次使用图文教程

vue.cli脚手架初次使用图文教程 我之前的环境是安装了node.js, 我记得曾经好像安装过vue ,不过现在又要重新开始学习起来了.在youtube上看了一vue的相关教程,还是需要实操的. 好像安装过npm -v 发现已经安装了5.6.0 需要安装然后使用 cnpm 安装 vue-cli 和 webpack 安装代码:npm install -g vue-cli 一.生成项目 首先需要在命令行中进入到项目目录,然后输入: vue init webpack vue-testone p.p1

web前端 -- vue -- vue cli脚手架

搭建 vue-cli 脚手架 1. 依赖的环境是:node.js 1.1.检测node和npm版本 node.js 官网下载页,选择 windows 系统 msi 安装版本,一路 next 安装. 要有6.9以上的node:node-v 要有3.10以上的npm:npm -v 附:安装node.js 1.2. 安装全局 vue cli Linux下使用命令:sudo npm install --global vue-cli windows下:npm install --global vue-cl

vue cli搭建项目及文件引入

cli搭建方法:需安装nodejs先 1.npm install -g cnpm --registry=https://registry.npm.taobao.org //安装cnpm,用cnpm下载东西有时会快一些 2.cnpm i -g vue-cli  //安装 vue-cli,i:install 安装,-g:全局,哪儿都可以使用. 3.vue init webpack-simple ProjectName //webpack-simple:使用webpack-simple模板,proje

[Vue CLI 3] Uglify 相关的应用和设计

在本文开始之前,先留一个问题? 如果在新版本我想加一个 drop_console 的配置呢? 在老版本的脚手架生成的配置中,对于线上环境的文件:webpack.prod.conf.js 使用了插件:uglifyjs-webpack-plugin const UglifyJsPlugin = require('uglifyjs-webpack-plugin') 插件配置如下: plugins: [ new UglifyJsPlugin({ uglifyOptions: { compress: {