Nodejs中browser-sync 排除指定路径的正确姿势是啥?
Nodejs中browser-sync 排除指定路径的正确姿势是啥?
browser-sync start --help
–ignore Ignore patterns for file watchers [array]
-f, --files File paths to watch [array]
下边是我的使用的命令
browser-sync start --proxy “http://127.0.0.1/”
–cwd “/home/wdssmq/wwwroot/www/zbp_dev/zb_users”
–ignore “bin/, cache/, usr/”
–files “plugin//*.css, plugin//.html, plugin/**/.js, plugin//*.php, plugin//*.txt”
#—— 只监听插件变化
; -----
描述上一个是 Ignore patterns
,一个是 File paths
,就比较迷惑……
写 Z-BlogPHP 插件,同时开后台管理和前台页面,后台刷新时会预处理文件保存到 bin/,然后前台调用,预处理的操作好像就会重复触发刷新……
另外文档里有 logFileChanges 参数,但是仔细看了下不支持 cli 使用的样子?
所以 cli 里也看不到具体是哪个文件修改了。。
Browsersync 支持的参数 https://browsersync.bootcss.com/docs/options#option-logFileChanges
在Node.js中使用BrowserSync时,如果你想排除指定路径,可以通过配置files
选项中的watchOptions
和ignored
属性来实现。以下是具体的步骤和代码示例:
-
安装BrowserSync: 如果你还没有安装BrowserSync,可以通过npm进行安装:
npm install browser-sync --save-dev
-
配置BrowserSync: 在你的Node.js脚本中,配置BrowserSync并指定要排除的路径。例如,如果你想排除
node_modules
和dist
目录,可以这样做:const browserSync = require('browser-sync').create(); browserSync.init({ server: { baseDir: "./", watchOptions: { ignored: /node_modules|dist/ } } });
在上面的配置中,
ignored
属性使用了正则表达式来匹配需要排除的路径。node_modules
和dist
目录将被忽略,不会触发BrowserSync的重新加载。 -
运行脚本: 保存你的Node.js脚本(例如
server.js
),然后在命令行中运行:node server.js
现在,当你修改除了
node_modules
和dist
目录之外的文件时,BrowserSync将自动重新加载浏览器。
通过这种方式,你可以灵活地配置BrowserSync以排除特定的路径,从而避免不必要的重新加载。