t06_vue在mac操作系统中热更新失效问题包括cli与vite

1、问题原因

用vuecli与vite创建的vue项目,默认是没有热部署更新的。而且查阅大量资料后仍然找不到解决方法

这个我认为是mac的m系列芯片的问题

为什么我会这么认为,因为相同的项目,node_moudules我都没有变过,再win系统中与mac系统同时运行,只有win系统是可以正常热部署的,mac就跟死了一样。这个问题真的是令人抓耳挠腮,浪费了我两台时间没想到就加加几行代码。

2、解决方法

2.1 vuecli

修改 vue.config.js文件

最主要的是添加如下代码:

configureWebpack: 复制代码
  // 根级 watchOptions,作用于所有模块编译
  watchOptions: {
    poll: 1000,            // 轮询间隔 ms
    aggregateTimeout: 300, // 防抖时间 ms
    ignored: /node_modules/
  }
},

vue.config.js文件完整代码1(根据自己代码选择):

// 复制代码
module.exports = {
  // (一)Webpack 编译器监视改动
  configureWebpack: {
    // 根级 watchOptions,作用于所有模块编译
    watchOptions: {
      poll: 1000,            // 轮询间隔 ms
      aggregateTimeout: 300, // 防抖时间 ms
      ignored: /node_modules/
    }
  },

  devServer: {
    hot: true,
    // (二)静态资源监视(可选)
    static: {
      watch: true
    },
    // (三)额外路径监视(可选)
    watchFiles: {
      paths: ['src/**/*', 'public/**/*'],
      options: {
        usePolling: false   // 这一项只影响 dev-server 的额外监视,不影响 Webpack 编译
      }
    },
    // 网络 & WS 设置,确保 HMR 客户端能连上
    host: '0.0.0.0',
    allowedHosts: 'all',
    client: {
      webSocketURL: 'ws://0.0.0.0:8080/ws'
    }
  }
}

vue.config.js文件完整代码2(根据自己代码选择):

const 复制代码
module.exports = defineConfig({
  transpileDependencies: true,
  configureWebpack: {
    // 根级 watchOptions,作用于所有模块编译
    watchOptions: {
      poll: 1000,            // 轮询间隔 ms
      aggregateTimeout: 300, // 防抖时间 ms
      ignored: /node_modules/
    }
  },
})

2.2 vue-vite

vue.config.js文件中添加如下监听

watch: 复制代码
  usePolling: true, // 关键点!
}

vue.config.js文件完整代码

import 复制代码
import vue from '@vitejs/plugin-vue'

export default defineConfig({
  plugins: [vue()],
  server: {
    host: '0.0.0.0', // 或 'localhost'
    port: 5173,
    watch: {
      usePolling: true, // 关键点!
    }
  }
})
相关推荐
蔓越莓15 小时前
性能优化:webpack打包层面优化
前端·面试
TJHHH.15 小时前
XSS-labs-master
前端·web安全·xss
风月说与山鬼15 小时前
十二、Vue插件
前端·vue.js
spter。16 小时前
一次 Redis SETNX 的小插曲,我重新理解了原子性
前端·redis·bootstrap
Sayai16 小时前
【无标题】ECharts 实现日志量异常检测:基线 ±Kσ 基带 + 灵敏度切换(Vue2 实战)
前端·javascript·echarts
用户31693538118316 小时前
SpringBoot + Vue 项目生产环境部署完整指南
前端·后端
Csvn16 小时前
🔍 TypeScript `satisfies` 操作符:既要类型安全,又要推断的原始字面量类型
前端
Csvn16 小时前
🚦 手写 Promise 并发控制:如何优雅限制异步请求的并发数?
前端
gb421528717 小时前
python中Web应用服务器
开发语言·前端·python
默_笙17 小时前
💌 为了把"主题色"传给孙子组件,我翻了五层楼——直到遇见了 useContext
前端·javascript