相同的模式适用于 chokidar-cli,但不适用于 windows 上的 chokidar
The same pattern works with chokidar-cli but does not work with chokidar on windows
您好,我正在尝试在 Windows 上设置 chokidar。我必须使用 chokidar-cli
来处理它,这是正确报告事件的命令行:
chokidar "D:\PATH\**\WATCHED_FOLDER\*.TXT"
但是当我尝试用 node index.js
做同样的事情时,使用下面的代码,事件没有被报告。
const chokidar = require('chokidar');
chokidar
.watch('D:\PATH\**\WATCHED_FOLDER\*.TXT')
.on('all', (event, path) => {
console.log(event, path)
})
我想知道为什么相同的 glob 表达式在命令行中有效,而在 javascript 中却无效。我也没有找到关于 chokidar 在 Windows.
上接受的语法的参考
有人可以指出这里的问题吗?谢谢。
虽然 chokidar-cli
使用反斜杠,但 chokidar
需要在 glob 路径中使用正斜杠。这有效:
const chokidar = require('chokidar');
chokidar
.watch('D:/PATH/**/WATCHED_FOLDER/*.TXT')
.on('all', (event, path) => {
console.log(event, path)
})
但请注意,变量 path
中的字符串仍然带有反斜杠:例如'D:\PATH\SUBFOLDER\WATCHED_FOLDER\TEST.TXT'
。这有点不一致,但它有效。
您好,我正在尝试在 Windows 上设置 chokidar。我必须使用 chokidar-cli
来处理它,这是正确报告事件的命令行:
chokidar "D:\PATH\**\WATCHED_FOLDER\*.TXT"
但是当我尝试用 node index.js
做同样的事情时,使用下面的代码,事件没有被报告。
const chokidar = require('chokidar');
chokidar
.watch('D:\PATH\**\WATCHED_FOLDER\*.TXT')
.on('all', (event, path) => {
console.log(event, path)
})
我想知道为什么相同的 glob 表达式在命令行中有效,而在 javascript 中却无效。我也没有找到关于 chokidar 在 Windows.
上接受的语法的参考有人可以指出这里的问题吗?谢谢。
虽然 chokidar-cli
使用反斜杠,但 chokidar
需要在 glob 路径中使用正斜杠。这有效:
const chokidar = require('chokidar');
chokidar
.watch('D:/PATH/**/WATCHED_FOLDER/*.TXT')
.on('all', (event, path) => {
console.log(event, path)
})
但请注意,变量 path
中的字符串仍然带有反斜杠:例如'D:\PATH\SUBFOLDER\WATCHED_FOLDER\TEST.TXT'
。这有点不一致,但它有效。