UNPKG

@fdt/dev-base

Version:
81 lines (62 loc) 1.88 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; function _react() { const data = _interopRequireDefault(require("react")); _react = function _react() { return data; }; return data; } function _cleanWebpackPlugin() { const data = require("clean-webpack-plugin"); _cleanWebpackPlugin = function _cleanWebpackPlugin() { return data; }; return data; } function _copyWebpackPlugin() { const data = _interopRequireDefault(require("copy-webpack-plugin")); _copyWebpackPlugin = function _copyWebpackPlugin() { return data; }; return data; } var _webpack = _interopRequireDefault(require("./webpack.base")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** * * 正式环境webpack的特殊配置 * 因为是直接提供给webpack进行使用的配置 * 所以不属于webpack的配置不能直接出现在实例上 * 例如: cwd */ class WebpackProdConfig extends _webpack.default { constructor(params) { super(params); WebpackProdConfig.cwd = params.cwd; WebpackProdConfig.outputPath = this.output.path; this.mode = 'production'; WebpackProdConfig.setPlugins(this.plugins); } // 程序运行时所在目录路径 // 配置webpack的plugins static setPlugins(plugins) { const cwd = WebpackProdConfig.cwd; // 清除output 对应的文件及文件夹 plugins.push(new (_cleanWebpackPlugin().CleanWebpackPlugin)()); // 拷贝静态文件 plugins.push(new (_copyWebpackPlugin().default)({ patterns: [{ from: cwd + '/public/**/*', to: WebpackProdConfig.outputPath }], options: { concurrency: 100 } })); } } WebpackProdConfig.cwd = ''; WebpackProdConfig.outputPath = ''; var _default = WebpackProdConfig; exports.default = _default;