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 new file mode 100644 index 00000000..a95eecb0 --- /dev/null +++ b/build/webpack.dist.locale.config.js @@ -0,0 +1,32 @@ +var path = require('path'); +var webpack = require('webpack'); +var entry = require('./locale'); +process.env.NODE_ENV = 'production'; + +module.exports = { + entry, + 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 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",