众所周知,在项目中如果在资源加载请求还未完成的时候,由于阻塞机制,会出现首页白屏的问题,产生很差的用户体验。本文以react为例,提供一个解决方法。
解决原理:使用 onreadystatechange 去监听 readyState,在资源加载完成之前加载一个只有框架的静态页面,页面不请求[……]
1 2 3 4 5 6 7 8 9 10 11 12 |
webpack 3.8.1 使用 extract-text-webpack-plugin 3.0.2 抽取css时失败,报错: ERROR in ./src/static/style/localTime.css Module parse failed: Unexpected token (1:0) You may need an appropriate loader to handle this file type. | .localTimeBox { | color: red; | } @ ./node_modules/style-loader!./src/static/style/localTime.css 4:14-42 webpack-build.config.js 配置为: |
1 2 3 4 5 6 7 8 9 10 11 |
module: { loaders: [ { test: /\.css$/, loader: ExtractTextPlugin.extract('style-loader', 'style-loader!css-loader', {publicPath: '../'}) } ] }, plugins: [ new ExtractTextPlugin('css/bundle.min.css', {allChunks: true}) ] |
解决方法:
将webpack-build.config.js 配置改为:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
module: { loaders: [ { test: /\.css$/, loader: ExtractTextPlugin.extract({ fallback: 'style-loader', use: ['css-loader'], publicPath: '../' }) } ] }, plugins: [ new ExtractTextPlugin('css/bundle.min.css', {allChunks: true}) ] |
问题就解决了。[……]