| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- import chalk from 'chalk';
- import { Compiler } from 'webpack';
- import WebpackDevServer from 'webpack-dev-server';
- const localIPv4 = WebpackDevServer.internalIPSync('v4');
- class TerminalPrintPlugin {
- constructor() {}
- apply(compiler: Compiler) {
- compiler.hooks.done.tapAsync('TerminalPrintPlugin', (stats, callback) => {
- const publicPath = stats.compilation.outputOptions.publicPath as string;
- const port = stats.compilation.options.devServer!.port as number;
- console.log(' App running at:');
- console.log(
- `- Local: ${chalk.cyan(`http://localhost:${port}${publicPath}`)}`
- );
- console.log(
- `- Network: ${chalk.cyan(
- `http://${localIPv4!}:${port}${publicPath}`
- )}`
- );
- console.log(`- 作者微信: ${chalk.cyan(`shuisheng9905`)}`);
- console.log(
- `- 付费课程: ${chalk.cyan(`https://www.hsslive.cn/article/151`)}`
- );
- console.log(
- `- 私有化部署: ${chalk.cyan(
- `https://live.hsslive.cn/privatizationDeployment`
- )}`
- );
- console.log(
- `- 欢迎PR: ${chalk.cyan(
- `billd-live目前只有作者一人开发,难免有不足的地方,欢迎提PR或Issue`
- )}`
- );
- console.log();
- callback();
- });
- }
- }
- export default TerminalPrintPlugin;
|