From e4481a9d3493fffafc8fa30e314abbae897ce6b7 Mon Sep 17 00:00:00 2001 From: Pan Date: Mon, 2 Jul 2018 14:02:42 +0800 Subject: [PATCH] fix[build.js]: fixed build bug in preview mode #819 --- build/build.js | 32 ++++++++++++++++++++------------ package.json | 3 ++- 2 files changed, 22 insertions(+), 13 deletions(-) diff --git a/build/build.js b/build/build.js index fc793972..fe24ac8f 100644 --- a/build/build.js +++ b/build/build.js @@ -8,9 +8,10 @@ const chalk = require('chalk') const webpack = require('webpack') const config = require('../config') const webpackConfig = require('./webpack.prod.conf') -const server = require('pushstate-server') +var connect = require('connect'); +var serveStatic = require('serve-static') -var spinner = ora('building for '+ process.env.env_config+ ' environment...' ) +const spinner = ora('building for ' + process.env.env_config + ' environment...') spinner.start() rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => { @@ -27,22 +28,29 @@ rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => { }) + '\n\n') if (stats.hasErrors()) { - console.log(chalk.red(' Build failed with errors.\n')) + console.log(chalk.red(' Build failed with errors.\n')) process.exit(1) } - console.log(chalk.cyan(' Build complete.\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' + ' Tip: built files are meant to be served over an HTTP server.\n' + + ' Opening index.html over file:// won\'t work.\n' )) - if(process.env.npm_config_preview){ - server.start({ - port: 9526, - directory: './dist', - file: '/index.html' + + if (process.env.npm_config_preview) { + const port = 9526 + const host = "http://localhost:" + port + const basePath = config.build.assetsPublicPath + const app = connect() + + app.use(basePath, serveStatic('./dist', { + 'index': ['index.html', '/'] + })) + + app.listen(port, function () { + console.log(chalk.green(`> Listening at http://localhost:${port}${basePath}`)) }); - console.log('> Listening at ' + 'http://localhost:9526' + '\n') } }) }) diff --git a/package.json b/package.json index 8fe3c3e3..b58fbceb 100644 --- a/package.json +++ b/package.json @@ -29,6 +29,7 @@ "axios": "0.17.1", "clipboard": "1.7.1", "codemirror": "5.32.0", + "connect": "3.6.6", "driver.js": "0.5.2", "dropzone": "5.2.0", "echarts": "3.8.5", @@ -42,6 +43,7 @@ "normalize.css": "7.0.0", "nprogress": "0.2.0", "screenfull": "3.3.2", + "serve-static": "1.13.2", "showdown": "1.8.5", "simplemde": "1.11.2", "sortablejs": "1.7.0", @@ -87,7 +89,6 @@ "postcss-import": "11.0.0", "postcss-loader": "2.0.9", "postcss-url": "7.3.0", - "pushstate-server": "3.0.1", "rimraf": "2.6.2", "sass-loader": "6.0.6", "script-loader": "0.7.2",