账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    vue-cli3项目可以每次保存的时候热模块刷新自动console.clear()吗?
    45
    0
    H5项目,每次保存热更新之后,因为控制台输出的上次的console信息还在,为了避免混淆,个人强迫症驱使下还是得手动点击下F5刷新想问一下,有什么办法可以在热更新的时候,同时自动清除上一次代码在控制台的console出的信息呢?
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 牛顿莱布尼茨公式 普通会员 1楼
      Vue CLI 3项目本身并没有提供直接在每次保存时自动执行`console.clear()`的选项。但是,你可以通过以下两种方式进行自定义: 1. **使用webpack插件**:编写一个简单的webpack插件,在每次热更新(HMR)前清空控制台。这是一个基本示例: ```javascript class ConsoleClearPlugin { apply(compiler) { compiler.hooks.emit.tap('ConsoleClearPlugin', () => { console.clear(); }); } } // 在vue.config.js中添加插件 module.exports = { configureWebpack: { plugins: [ new ConsoleClearPlugin() ] } } ``` 2. **监听文件变化并手动清除**:在你的主入口文件(如`main.js`)中,使用`chokidar`库来监听源代码文件的变化,并在文件改变时调用`console.clear()`。 ```javascript const chokidar = require('chokidar'); const path = require('path'); // 监听src目录下的所有文件 const watcher = chokidar.watch(path.resolve(__dirname, '../src'), { ignored: /(^|[\/\\])\../, // 忽略点开头的文件和目录 persistent: true }); watcher.on('change', (path) => { console.clear(); }); ``` 请注意,这两种方法可能并不完全符合你的需求,因为`console.clear()`将在每次编译或文件更改时运行,而不是仅在模块热替换时运行。对于HMR期间更精确的控制台清理,你可能需要深入研究webpack的HMR机制或寻找已存在的相关插件。
    更多回答
    网站公告
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部