@fdt/dev-base
Version:
69 lines (53 loc) • 1.57 kB
JavaScript
;
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 _webpack() {
const data = _interopRequireDefault(require("webpack"));
_webpack = function _webpack() {
return data;
};
return data;
}
var _webpack2 = _interopRequireDefault(require("./webpack.base"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/**
*
* 本地开发的webpack特殊配置
* 因为是直接提供给webpack进行使用的配置
* 所以不属于webpack的配置不能直接出现在实例上
* 例如: cwd
*/
class WebpackDevConfig extends _webpack2.default {
constructor(params) {
params.ISDEV = true;
super(params);
this.mode = 'development';
this.entry = WebpackDevConfig.setReloadConfig(this.entry);
this.plugins.push(new (_webpack().default.HotModuleReplacementPlugin)());
}
static setReloadConfig(entry) {
const reloadPath = 'webpack-hot-middleware/client?path=/__webpack_hmr&reload=true&noInfo=true'; // 添加自动刷新
if (!entry || typeof entry === 'string') {
return entry;
}
for (let attr in entry) {
if (Array.isArray(entry[attr])) {
entry[attr].unshift(reloadPath);
} else {
entry[attr] = [reloadPath, entry[attr]];
}
}
return entry;
}
}
var _default = WebpackDevConfig;
exports.default = _default;