玩笑 --watch 由临时文件触发
jest --watch triggered by temp files
我在 MacOS Catalina 上 运行ning Jest 26.4.2,使用 Emacs 作为我的文本编辑器。当观察者 运行ning 时,任何时候 Emacs 创建临时文件 jest 都会触发 运行。这会导致许多 运行s 触发,往往会错过实际的文件保存事件。
我运行正在和npx jest --watch
开玩笑
我试过 various jest configs,看起来很有希望的 testPathIgnorePatterns
,但没有用。
Emacs 通过使用模式 .#<target file name>
指向以 5 位数字结尾的文件的符号链接来创建临时文件。我试过忽略所有这些但没有帮助。
jest.config.js
:
watchPathIgnorePatterns: ['/[0-9]{5}/', '/#/'],
testPathIgnorePatterns: ['/[0-9]{5}/', '/#/'],
modulePathIgnorePatterns: ['/[0-9]{5}/', '/#/'],
您似乎忘记在最后添加点并删除斜杠(因为它是文件而不是文件夹)?所以 /#/
应该是 /.#
?我不是正则表达式大师,所以只创建了两个文件
.#test.test.js
test.test.js
而且我的 package.json
配置似乎正确忽略了第一个 (npm t -- --watch
)。您也可以尝试使用 <rootDir>
,或直接使用 npm t -- --config jest.config.js
传递配置文件
"jest": {
"testPathIgnorePatterns": [
"<rootDir>/.#",
"/.#"
]
}
我的编辑器 Emacs / Spacemacs 创建的文件是 lock files。一旦文件被编辑、保存或还原,它们就会被创建和删除。
我无法让 jest
忽略它们,所以我将我的 Spacemacs TypeScript 层配置为不通过 (typescript :variables create-lockfiles nil)
.
在 TypeScript 模式下创建它们
看最近的一个笑话(2021 年 4 月 26.6.1),createHasteMap()
函数调用 sane
和 ignored
composed from config.modulePathIgnorePatterns
and config.watchPathIgnorePatterns
(src). watchPathIgnorePatterns
似乎是合适的,但欢迎反驳我的建议.
jest.config.js
module.exports = {
modulePathIgnorePatterns: [
"\/\.#"
]
}
如果出于某种原因,您的目录层次结构中有 .../.#...
个您 不想 跳过的路径,您可以使用关键字 <rootDir>
,它将被替换为指向项目的根目录。 (如果您还有一个名为 <rootDir>
的目录,请退出。)
我在 MacOS Catalina 上 运行ning Jest 26.4.2,使用 Emacs 作为我的文本编辑器。当观察者 运行ning 时,任何时候 Emacs 创建临时文件 jest 都会触发 运行。这会导致许多 运行s 触发,往往会错过实际的文件保存事件。
我运行正在和npx jest --watch
我试过 various jest configs,看起来很有希望的 testPathIgnorePatterns
,但没有用。
Emacs 通过使用模式 .#<target file name>
指向以 5 位数字结尾的文件的符号链接来创建临时文件。我试过忽略所有这些但没有帮助。
jest.config.js
:
watchPathIgnorePatterns: ['/[0-9]{5}/', '/#/'],
testPathIgnorePatterns: ['/[0-9]{5}/', '/#/'],
modulePathIgnorePatterns: ['/[0-9]{5}/', '/#/'],
您似乎忘记在最后添加点并删除斜杠(因为它是文件而不是文件夹)?所以 /#/
应该是 /.#
?我不是正则表达式大师,所以只创建了两个文件
.#test.test.js
test.test.js
而且我的 package.json
配置似乎正确忽略了第一个 (npm t -- --watch
)。您也可以尝试使用 <rootDir>
,或直接使用 npm t -- --config jest.config.js
"jest": {
"testPathIgnorePatterns": [
"<rootDir>/.#",
"/.#"
]
}
我的编辑器 Emacs / Spacemacs 创建的文件是 lock files。一旦文件被编辑、保存或还原,它们就会被创建和删除。
我无法让 jest
忽略它们,所以我将我的 Spacemacs TypeScript 层配置为不通过 (typescript :variables create-lockfiles nil)
.
看最近的一个笑话(2021 年 4 月 26.6.1),createHasteMap()
函数调用 sane
和 ignored
composed from config.modulePathIgnorePatterns
and config.watchPathIgnorePatterns
(src). watchPathIgnorePatterns
似乎是合适的,但欢迎反驳我的建议.
jest.config.js
module.exports = {
modulePathIgnorePatterns: [
"\/\.#"
]
}
如果出于某种原因,您的目录层次结构中有 .../.#...
个您 不想 跳过的路径,您可以使用关键字 <rootDir>
,它将被替换为指向项目的根目录。 (如果您还有一个名为 <rootDir>
的目录,请退出。)