@@ -4,6 +4,12 @@ const MFS = require('memory-fs')
44const clientConfig = require ( './webpack.client.config' )
55const serverConfig = require ( './webpack.server.config' )
66
7+ const readFile = ( fs , file ) => {
8+ try {
9+ return fs . readFileSync ( path . join ( clientConfig . output . path , file ) , 'utf-8' )
10+ } catch ( e ) { }
11+ }
12+
713module . exports = function setupDevServer ( app , cb ) {
814 let bundle , clientManifest
915 let resolve
@@ -28,10 +34,16 @@ module.exports = function setupDevServer (app, cb) {
2834 noInfo : true
2935 } )
3036 app . use ( devMiddleware )
31- clientCompiler . plugin ( 'done' , ( ) => {
32- const fs = devMiddleware . fileSystem
33- const readFile = file => fs . readFileSync ( path . join ( clientConfig . output . path , file ) , 'utf-8' )
34- clientManifest = JSON . parse ( readFile ( 'vue-ssr-client-manifest.json' ) )
37+ clientCompiler . plugin ( 'done' , stats => {
38+ stats = stats . toJson ( )
39+ stats . errors . forEach ( err => console . error ( err ) )
40+ stats . warnings . forEach ( err => console . warn ( err ) )
41+ if ( stats . errors . length ) return
42+
43+ clientManifest = JSON . parse ( readFile (
44+ devMiddleware . fileSystem ,
45+ 'vue-ssr-client-manifest.json'
46+ ) )
3547 if ( bundle ) {
3648 ready ( bundle , {
3749 clientManifest
@@ -49,12 +61,10 @@ module.exports = function setupDevServer (app, cb) {
4961 serverCompiler . watch ( { } , ( err , stats ) => {
5062 if ( err ) throw err
5163 stats = stats . toJson ( )
52- stats . errors . forEach ( err => console . error ( err ) )
53- stats . warnings . forEach ( err => console . warn ( err ) )
54- const readFile = file => mfs . readFileSync ( path . join ( clientConfig . output . path , file ) , 'utf-8' )
64+ if ( stats . errors . length ) return
5565
5666 // read bundle generated by vue-ssr-webpack-plugin
57- bundle = JSON . parse ( readFile ( 'vue-ssr-server-bundle.json' ) )
67+ bundle = JSON . parse ( readFile ( mfs , 'vue-ssr-server-bundle.json' ) )
5868 if ( clientManifest ) {
5969 ready ( bundle , {
6070 clientManifest
0 commit comments