Svelte3中rollup开发服务器崩溃,如何配置livereload排除public大子文件夹?
配置rollup-plugin-livereload排除指定目录的方法
- 打开项目根目录下的
rollup.config.js文件 - 定位到
rollup-plugin-livereload插件的调用代码,degit默认创建的Svelte项目中,该插件的默认配置如下:
// 开头引入部分 import livereload from 'rollup-plugin-livereload'; export default { // 其他配置:input、output等 plugins: [ // 其他插件:svelte、resolve、commonjs等 !production && livereload('public'), // 其他插件:terser等 ] }
- 将
livereload的入参从字符串形式改为对象形式,添加exclude字段指定要排除的大容量文件夹路径,假设你的大容量文件夹名为post-resources,修改后的配置如下:
!production && livereload({ watch: 'public', // 指定监听的根目录,保持默认的public即可 // 排除public下的post-resources文件夹及其所有子内容,**/*为glob通配符,匹配所有子文件和子目录 exclude: ['public/post-resources/**/*'] }),
- 如需排除多个文件夹,直接在exclude数组中追加对应路径即可,路径以项目根目录为基准填写
- 该配置仅关闭livereload对排除目录的变更扫描,不会影响Svelte应用正常请求该目录下的静态资源,你的帖子资源拉取逻辑不受任何影响
- 保存配置后重新执行
npm run dev,开发服务器即可正常启动,不会再因扫描大量文件导致内存溢出崩溃。
内容的提问来源于stack exchange,提问作者reggie
相关产品推荐
相关产品推荐

