Vue - build -build.js文件解析

//webpack编译
//输出信息

‘use strict’
//
require(’./check-versions’)()// 检查NodeJS和npm的版本

process.env.NODE_ENV = ‘production’
//控制台loading动画
const ora = require(‘ora’)
const rm = require(‘rimraf’)
const path = require(‘path’)
// 高亮控制台输出的插件
const chalk = require(‘chalk’)
const webpack = require(‘webpack’)
const config = require(’…/config’)
const webpackConfig = require(’./webpack.prod.conf’)
//在控制台输出building for production…
const spinner = ora(‘building for production…’)
//开始loading动画
spinner.start()
//获取输出文件路径
rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => {
if (err) throw err
//webpack编译
webpack(webpackConfig, (err, stats) => {
//停止loading动画
spinner.stop()
//如果错误抛出错误
if (err) throw err
//完成输出相关信息
process.stdout.write(stats.toString({
colors: true,
modules: false,
children: false, // If you are using ts-loader, setting this to true will make TypeScript errors show up during build.
chunks: false,
chunkModules: false
}) + ‘\n\n’)

if (stats.hasErrors()) {
  console.log(chalk.red('  Build failed with errors.\n'))
  process.exit(1)
}

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'
))

})
})


版权声明:本文为Hxp_123456原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。