Commit 4b47f02693c934d94d66e880ff933e2d628a268d
Committed by
GitHub
Merge pull request #2029 from SergioCrisostomo/resuse-pr1281
Re-use pr1281
Showing
10 changed files
with
75 additions
and
47 deletions
Show diff stats
build/build-style.js
| 1 | -var gulp = require('gulp'); | |
| 2 | -var cleanCSS = require('gulp-clean-css'); | |
| 3 | -var less = require('gulp-less'); | |
| 4 | -var rename = require('gulp-rename'); | |
| 5 | -var autoprefixer = require('gulp-autoprefixer'); | |
| 1 | +const gulp = require('gulp'); | |
| 2 | +const cleanCSS = require('gulp-clean-css'); | |
| 3 | +const less = require('gulp-less'); | |
| 4 | +const rename = require('gulp-rename'); | |
| 5 | +const autoprefixer = require('gulp-autoprefixer'); | |
| 6 | 6 | |
| 7 | 7 | // 编译less |
| 8 | 8 | gulp.task('css', function () { | ... | ... |
build/locale.js
| 1 | -const readDir = require('fs').readdirSync | |
| 2 | -const files = readDir('./src/locale/lang') | |
| 3 | -const entry = {} | |
| 1 | +const readDir = require('fs').readdirSync; | |
| 2 | +const files = readDir('./src/locale/lang'); | |
| 3 | +const entry = {}; | |
| 4 | 4 | files.forEach(file => { |
| 5 | - const name = file.split('.')[0] | |
| 6 | - entry[name] = './src/locale/lang/' + file | |
| 7 | -}) | |
| 8 | -module.exports = entry | |
| 9 | 5 | \ No newline at end of file |
| 6 | + const name = file.split('.')[0]; | |
| 7 | + entry[name] = './src/locale/lang/' + file; | |
| 8 | +}); | |
| 9 | +module.exports = entry; | ... | ... |
build/webpack.base.config.js
| 1 | 1 | /** |
| 2 | 2 | * 公共配置 |
| 3 | 3 | */ |
| 4 | -var path = require('path'); | |
| 4 | +const path = require('path'); | |
| 5 | +const webpack = require('webpack'); | |
| 5 | 6 | function resolve (dir) { |
| 6 | - return path.join(__dirname, '..', dir) | |
| 7 | + return path.join(__dirname, '..', dir); | |
| 7 | 8 | } |
| 8 | 9 | |
| 9 | 10 | module.exports = { |
| ... | ... | @@ -63,5 +64,8 @@ module.exports = { |
| 63 | 64 | 'vue': 'vue/dist/vue.esm.js', |
| 64 | 65 | '@': resolve('src') |
| 65 | 66 | } |
| 66 | - } | |
| 67 | + }, | |
| 68 | + plugins: [ | |
| 69 | + new webpack.optimize.ModuleConcatenationPlugin() | |
| 70 | + ] | |
| 67 | 71 | }; | ... | ... |
build/webpack.dev.config.js
| ... | ... | @@ -2,13 +2,13 @@ |
| 2 | 2 | * 本地预览 |
| 3 | 3 | */ |
| 4 | 4 | |
| 5 | -var path = require('path'); | |
| 6 | -var webpack = require('webpack'); | |
| 7 | -// var ExtractTextPlugin = require('extract-text-webpack-plugin'); | |
| 8 | -var HtmlWebpackPlugin = require('html-webpack-plugin'); | |
| 9 | -var merge = require('webpack-merge'); | |
| 10 | -var webpackBaseConfig = require('./webpack.base.config.js'); | |
| 11 | -var FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin'); | |
| 5 | +const path = require('path'); | |
| 6 | +const webpack = require('webpack'); | |
| 7 | +// const ExtractTextPlugin = require('extract-text-webpack-plugin'); | |
| 8 | +const HtmlWebpackPlugin = require('html-webpack-plugin'); | |
| 9 | +const merge = require('webpack-merge'); | |
| 10 | +const webpackBaseConfig = require('./webpack.base.config.js'); | |
| 11 | +const FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin'); | |
| 12 | 12 | |
| 13 | 13 | |
| 14 | 14 | module.exports = merge(webpackBaseConfig, { | ... | ... |
build/webpack.dist.dev.config.js
| 1 | -var path = require('path'); | |
| 2 | -var webpack = require('webpack'); | |
| 3 | -var merge = require('webpack-merge'); | |
| 4 | -var webpackBaseConfig = require('./webpack.base.config.js'); | |
| 1 | +const path = require('path'); | |
| 2 | +const webpack = require('webpack'); | |
| 3 | +const merge = require('webpack-merge'); | |
| 4 | +const webpackBaseConfig = require('./webpack.base.config.js'); | |
| 5 | 5 | |
| 6 | 6 | process.env.NODE_ENV = 'production'; |
| 7 | 7 | ... | ... |
build/webpack.dist.locale.config.js
| 1 | -var path = require('path'); | |
| 2 | -var webpack = require('webpack'); | |
| 3 | -var entry = require('./locale'); | |
| 1 | +const path = require('path'); | |
| 2 | +const webpack = require('webpack'); | |
| 3 | +const entry = require('./locale'); | |
| 4 | 4 | process.env.NODE_ENV = 'production'; |
| 5 | 5 | |
| 6 | 6 | module.exports = { |
| ... | ... | @@ -12,7 +12,7 @@ module.exports = { |
| 12 | 12 | loader: 'babel-loader', |
| 13 | 13 | exclude: /node_modules/ |
| 14 | 14 | } |
| 15 | - ], | |
| 15 | + ] | |
| 16 | 16 | }, |
| 17 | 17 | output: { |
| 18 | 18 | path: path.resolve(__dirname, '../dist/locale'), |
| ... | ... | @@ -29,4 +29,4 @@ module.exports = { |
| 29 | 29 | } |
| 30 | 30 | }) |
| 31 | 31 | ] |
| 32 | -} | |
| 33 | 32 | \ No newline at end of file |
| 33 | +}; | ... | ... |
build/webpack.dist.prod.config.js
| 1 | -var path = require('path'); | |
| 2 | -var webpack = require('webpack'); | |
| 3 | -var merge = require('webpack-merge'); | |
| 4 | -var webpackBaseConfig = require('./webpack.base.config.js'); | |
| 1 | +const path = require('path'); | |
| 2 | +const webpack = require('webpack'); | |
| 3 | +const merge = require('webpack-merge'); | |
| 4 | +const webpackBaseConfig = require('./webpack.base.config.js'); | |
| 5 | +const CompressionPlugin = require('compression-webpack-plugin'); | |
| 5 | 6 | |
| 6 | 7 | process.env.NODE_ENV = 'production'; |
| 7 | 8 | |
| ... | ... | @@ -34,6 +35,13 @@ module.exports = merge(webpackBaseConfig, { |
| 34 | 35 | compress: { |
| 35 | 36 | warnings: false |
| 36 | 37 | } |
| 38 | + }), | |
| 39 | + new CompressionPlugin({ | |
| 40 | + asset: '[path].gz[query]', | |
| 41 | + algorithm: 'gzip', | |
| 42 | + test: /\.(js|css)$/, | |
| 43 | + threshold: 10240, | |
| 44 | + minRatio: 0.8 | |
| 37 | 45 | }) |
| 38 | 46 | ] |
| 39 | 47 | }); | ... | ... |
build/webpack.test.config.js
| ... | ... | @@ -2,12 +2,12 @@ |
| 2 | 2 | * 用于单元测试 |
| 3 | 3 | */ |
| 4 | 4 | |
| 5 | -var webpack = require('webpack'); | |
| 6 | -var merge = require('webpack-merge'); | |
| 7 | -var webpackBaseConfig = require('./webpack.base.config.js'); | |
| 5 | +const webpack = require('webpack'); | |
| 6 | +const merge = require('webpack-merge'); | |
| 7 | +const webpackBaseConfig = require('./webpack.base.config.js'); | |
| 8 | 8 | |
| 9 | 9 | |
| 10 | -var webpackConfig = merge(webpackBaseConfig, { | |
| 10 | +const webpackConfig = merge(webpackBaseConfig, { | |
| 11 | 11 | // use inline sourcemap for karma-sourcemap-loader |
| 12 | 12 | devtool: '#inline-source-map', |
| 13 | 13 | plugins: [ | ... | ... |
package-lock.json
| 1 | 1 | { |
| 2 | 2 | "name": "iview", |
| 3 | - "version": "2.3.2", | |
| 3 | + "version": "2.4.0", | |
| 4 | 4 | "lockfileVersion": 1, |
| 5 | 5 | "requires": true, |
| 6 | 6 | "dependencies": { |
| ... | ... | @@ -1887,6 +1887,25 @@ |
| 1887 | 1887 | } |
| 1888 | 1888 | } |
| 1889 | 1889 | }, |
| 1890 | + "compression-webpack-plugin": { | |
| 1891 | + "version": "1.0.0", | |
| 1892 | + "resolved": "https://registry.npmjs.org/compression-webpack-plugin/-/compression-webpack-plugin-1.0.0.tgz", | |
| 1893 | + "integrity": "sha512-OPp+tvvMCd8FrJHDLG4v5EpP4Fe5w5uBNXOmc3K7SdBaK1FH+TGwtafG9GLgTI6c2WHIgDFt98T8qXwaXuyRnw==", | |
| 1894 | + "requires": { | |
| 1895 | + "async": "2.4.1", | |
| 1896 | + "webpack-sources": "1.0.1" | |
| 1897 | + }, | |
| 1898 | + "dependencies": { | |
| 1899 | + "async": { | |
| 1900 | + "version": "2.4.1", | |
| 1901 | + "resolved": "https://registry.npmjs.org/async/-/async-2.4.1.tgz", | |
| 1902 | + "integrity": "sha1-YqVrJ5yYoR0JhwlqAcw+6463u9c=", | |
| 1903 | + "requires": { | |
| 1904 | + "lodash": "4.17.4" | |
| 1905 | + } | |
| 1906 | + } | |
| 1907 | + } | |
| 1908 | + }, | |
| 1890 | 1909 | "concat-map": { |
| 1891 | 1910 | "version": "0.0.1", |
| 1892 | 1911 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", |
| ... | ... | @@ -12302,8 +12321,7 @@ |
| 12302 | 12321 | "lodash": { |
| 12303 | 12322 | "version": "4.17.4", |
| 12304 | 12323 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", |
| 12305 | - "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=", | |
| 12306 | - "dev": true | |
| 12324 | + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" | |
| 12307 | 12325 | }, |
| 12308 | 12326 | "lodash._baseassign": { |
| 12309 | 12327 | "version": "3.2.0", |
| ... | ... | @@ -14438,14 +14456,12 @@ |
| 14438 | 14456 | "source-list-map": { |
| 14439 | 14457 | "version": "2.0.0", |
| 14440 | 14458 | "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.0.tgz", |
| 14441 | - "integrity": "sha512-I2UmuJSRr/T8jisiROLU3A3ltr+swpniSmNPI4Ml3ZCX6tVnDsuZzK7F2hl5jTqbZBWCEKlj5HRQiPExXLgE8A==", | |
| 14442 | - "dev": true | |
| 14459 | + "integrity": "sha512-I2UmuJSRr/T8jisiROLU3A3ltr+swpniSmNPI4Ml3ZCX6tVnDsuZzK7F2hl5jTqbZBWCEKlj5HRQiPExXLgE8A==" | |
| 14443 | 14460 | }, |
| 14444 | 14461 | "source-map": { |
| 14445 | 14462 | "version": "0.5.6", |
| 14446 | 14463 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", |
| 14447 | - "integrity": "sha1-dc449SvwczxafwwRjYEzSiu19BI=", | |
| 14448 | - "dev": true | |
| 14464 | + "integrity": "sha1-dc449SvwczxafwwRjYEzSiu19BI=" | |
| 14449 | 14465 | }, |
| 14450 | 14466 | "source-map-support": { |
| 14451 | 14467 | "version": "0.4.18", |
| ... | ... | @@ -16272,7 +16288,6 @@ |
| 16272 | 16288 | "version": "1.0.1", |
| 16273 | 16289 | "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.0.1.tgz", |
| 16274 | 16290 | "integrity": "sha512-05tMxipUCwHqYaVS8xc7sYPTly8PzXayRCB4dTxLhWTqlKUiwH6ezmEe0OSreL1c30LAuA3Zqmc+uEBUGFJDjw==", |
| 16275 | - "dev": true, | |
| 16276 | 16291 | "requires": { |
| 16277 | 16292 | "source-list-map": "2.0.0", |
| 16278 | 16293 | "source-map": "0.5.6" | ... | ... |