报错: 之前 node 服务启动之后,发现会报错 DeprecationWarning: Tapable.plugin is deprecated. Use new API on '.hooks' instead
问题原因
这是 webpack 的告警,因为 webpack 插件使用了旧的 API 导致的。
再对比 webpack 的提示,需要修改调用方式 官方文档
// 旧
compiler.plugin('watch-run', function checkWatchingMode(watching, done) {
isWatching = true;
done();
});
// 新
compiler.hooks.watchRun.tap('watch-run', function checkWatchingMode(watching, done) {
isWatching = true;
done();
});
然后翻看插件文档 open-browser-webpack-plugin@0.0.5
,发现已经好几年没有更新了。。。
突然想起 node.js 好像可以直接启动浏览器并打开某网址。所以去掉插件,使用 node.js 的内置模块 child_process
。
参考代码:
const childProcess = require('child_process');
// 使用默认浏览器打开
childProcess.exec('start http://www.baidu.com');
// 使用指定浏览器打开
childProcess.exec('start firefox http://www.baidu.com');