前端脚手架配置打包后的预览环境

发布时间 2023-06-20 09:10:52作者: 资深if-else侠

前端脚手架配置打包后的预览环境

首先npm安装connect,runjs,chalk

index.js主要代码如下 请根据项目实际情况进行更改,仅作参考:

process.argv获取的是执行命令 例如node build/index.js --preview

const { run } = require('runjs')
const chalk = require('chalk')
const config = require('../vue.config.js')
const rawArgv = process.argv.slice(2)
const args = rawArgv.join(' ')

if (process.env.npm_config_preview || rawArgv.includes('--preview')) {
  const report = rawArgv.includes('--report')

  run(`vue-cli-service build ${args}`)

  const port = 9526
  const publicPath = config.publicPath

  var connect = require('connect')
  var serveStatic = require('serve-static')
  const app = connect()

  app.use(
    publicPath,
    serveStatic('./dist', {
      index: ['index.html', '/']
    })
  )

  app.listen(port, function () {
    console.log(chalk.green(`> Preview at  http://localhost:${port}${publicPath}`))
    if (report) {
      console.log(chalk.green(`> Report at  http://localhost:${port}${publicPath}report.html`))
    }

  })
} else {
  run(`vue-cli-service build ${args}`)
}

在package.json配置script命令

{
	"scripts":{
		"preview": "node 你的目录/index.js --preview",
	}
}