From a3a725a179905b69aaf264478180fe36f3374672 Mon Sep 17 00:00:00 2001 From: Lawrence Lee Date: Mon, 17 Jul 2017 16:03:21 +0800 Subject: [PATCH 1/3] add locale packaging config --- build/webpack.dist.locale.config.js | 43 +++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 build/webpack.dist.locale.config.js diff --git a/build/webpack.dist.locale.config.js b/build/webpack.dist.locale.config.js new file mode 100644 index 00000000..a20e840d --- /dev/null +++ b/build/webpack.dist.locale.config.js @@ -0,0 +1,43 @@ +var path = require('path'); +var webpack = require('webpack'); + +process.env.NODE_ENV = 'production'; + +module.exports = { + entry: { + 'de-DE': './src/locale/lang/de-DE.js', + 'en-US': './src/locale/lang/en-US.js', + 'es-ES': './src/locale/lang/de-DE.js', + 'fr-FR': './src/locale/lang/zh-CN.js', + 'ja-JP': './src/locale/lang/zh-CN.js', + 'pt-BR': './src/locale/lang/zh-CN.js', + 'ru-RU': './src/locale/lang/zh-CN.js', + 'tr-TR': './src/locale/lang/tr-TR.js', + 'zh-CN': './src/locale/lang/zh-CN.js', + 'zh-TW': './src/locale/lang/zh-TW.js' + }, + module: { + rules: [ + { + test: /\.js$/, + loader: 'babel-loader', + exclude: /node_modules/ + } + ], + }, + output: { + path: path.resolve(__dirname, '../dist/locale'), + publicPath: '/dist/locale/', + filename: '[name].js', + library: 'iview/locale', + libraryTarget: 'umd', + umdNamedDefine: true + }, + plugins: [ + new webpack.DefinePlugin({ + 'process.env': { + NODE_ENV: '"production"' + } + }) + ] +} \ No newline at end of file From 0813a64c867ccba6f6441c51cc386db56ab867f3 Mon Sep 17 00:00:00 2001 From: Lawrence Lee Date: Mon, 17 Jul 2017 16:03:50 +0800 Subject: [PATCH 2/3] update npm script: npm run dist:locale --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index e709355e..8b3050c3 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,8 @@ "dist:style": "gulp --gulpfile build/build-style.js", "dist:dev": "webpack --config build/webpack.dist.dev.config.js", "dist:prod": "webpack --config build/webpack.dist.prod.config.js", - "dist": "npm run dist:style && npm run dist:dev && npm run dist:prod", + "dist:locale": "webpack --config build/webpack.dist.locale.config.js", + "dist": "npm run dist:style && npm run dist:dev && npm run dist:prod && npm run dist:locale", "lint": "eslint --fix --ext .js,.vue src", "unit": "cross-env BABEL_ENV=test karma start test/unit/karma.conf.js --single-run", "test": "npm run lint && npm run unit", From aaf900f3194ce8593a011fbd7562f2030cc00cdd Mon Sep 17 00:00:00 2001 From: Lawrence Lee Date: Mon, 17 Jul 2017 23:36:33 +0800 Subject: [PATCH 3/3] update locale packaging config --- build/locale.js | 8 ++++++++ build/webpack.dist.locale.config.js | 15 ++------------- 2 files changed, 10 insertions(+), 13 deletions(-) create mode 100644 build/locale.js diff --git a/build/locale.js b/build/locale.js new file mode 100644 index 00000000..82efcb69 --- /dev/null +++ b/build/locale.js @@ -0,0 +1,8 @@ +const readDir = require('fs').readdirSync +const files = readDir('./src/locale/lang') +const entry = {} +files.forEach(file => { + const name = file.split('.')[0] + entry[name] = './src/locale/lang/' + file +}) +module.exports = entry \ No newline at end of file diff --git a/build/webpack.dist.locale.config.js b/build/webpack.dist.locale.config.js index a20e840d..a95eecb0 100644 --- a/build/webpack.dist.locale.config.js +++ b/build/webpack.dist.locale.config.js @@ -1,21 +1,10 @@ var path = require('path'); var webpack = require('webpack'); - +var entry = require('./locale'); process.env.NODE_ENV = 'production'; module.exports = { - entry: { - 'de-DE': './src/locale/lang/de-DE.js', - 'en-US': './src/locale/lang/en-US.js', - 'es-ES': './src/locale/lang/de-DE.js', - 'fr-FR': './src/locale/lang/zh-CN.js', - 'ja-JP': './src/locale/lang/zh-CN.js', - 'pt-BR': './src/locale/lang/zh-CN.js', - 'ru-RU': './src/locale/lang/zh-CN.js', - 'tr-TR': './src/locale/lang/tr-TR.js', - 'zh-CN': './src/locale/lang/zh-CN.js', - 'zh-TW': './src/locale/lang/zh-TW.js' - }, + entry, module: { rules: [ {