node.js - mac外部驱动器上的create-react-app不断刷新页面
问题描述
我正在通过 USB-C 连接到 MacBook Pro (macOS Catalina) 的外部驱动器上运行使用 create-react-app ("react": "^16.13.1", nodejs: 13.12.0) 创建的 react 应用程序。
在npm start
应用程序每 ≈ 10 秒(不是恒定间隔)不断刷新后,文件没有任何更改。该页面也会在浏览器中重新加载。
我阻止 Spotlight 索引此驱动器(通过添加到隐私),但问题仍然存在。还尝试了另一台 MacBook Pro (macOS Catalina)。其中一台笔记本电脑没有安装防病毒软件。
相同的应用程序无需从每个 MBP 自己的内部驱动器重新加载即可运行。
我不确定还有什么可以触发外部驱动器上的重新加载。
在我启动 npm 应用程序后(磁盘访问指示灯随着每个应用程序/页面重新加载而闪烁):
USB-C: sudo lsof +D "/Volumes/USB-C"
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mds 136 root 21r DIR 1,11 32768 2 /Volumes/USB-C
zsh 81813 username cwd DIR 1,11 32768 250 /Volumes/USB-C/myproject/frontend
zsh 82998 username cwd DIR 1,11 32768 2 /Volumes/USB-C
node 86986 username cwd DIR 1,11 32768 250 /Volumes/USB-C/myproject/frontend
node 86987 username cwd DIR 1,11 32768 250 /Volumes/USB-C/myproject/frontend
node 86988 username cwd DIR 1,11 32768 250 /Volumes/USB-C/myproject/frontend
node 86988 username txt REG 1,11 36204 649396 /Volumes/USB-C/myproject/frontend/node_modules/fsevents/fsevents.node
sudo 87013 root cwd DIR 1,11 32768 2 /Volumes/USB-C
lsof 87014 root cwd DIR 1,11 32768 2 /Volumes/USB-C
lsof 87015 root cwd DIR 1,11 32768 2 /Volumes/USB-C
正常使用(应用程序未运行,磁盘指示灯不闪烁,无法访问)
USB-C: sudo lsof +D "/Volumes/USB-C"
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mds 136 root 21r DIR 1,11 32768 2 /Volumes/USB-C
zsh 81813 username cwd DIR 1,11 32768 250 /Volumes/USB-C/myproject/frontend
zsh 82998 username cwd DIR 1,11 32768 2 /Volumes/USB-C
sudo 87126 root cwd DIR 1,11 32768 2 /Volumes/USB-C
lsof 87127 root cwd DIR 1,11 32768 2 /Volumes/USB-C
lsof 87128 root cwd DIR 1,11 32768 2 /Volumes/USB-C
我也使用了 USB 记忆棒,我得到相同的行为只是刷新之间的时间似乎有点长(可能是由于驱动器的速度较慢)
更新:我将驱动器格式化为 Mac OS Extended (Journaled),问题不再出现。在我尝试的两个驱动器都使用 MS-DOS (FAT) 文件系统之前
解决方案
推荐阅读
- cypress - 赛普拉斯 - Windows - 出现错误“npm ERR!在 cypress@6.1.0 安装后脚本失败。”
- android - Android:根据国家/地区测试条件功能交付
- java - 在代理 testng 中工作时返回连接超时
- neo4j - spring-boot-starter-data-neo4j 未加载 OGM 核心注释
- python - OSError:[Errno 22] 无效参数:'..\x08_epoch_model_state.pt'
- typescript - 赛普拉斯:获取 web 元素数组
- swiftui - SwiftUI 强制子视图重绘
- azure - 如何使用 arm 模板在 azure 函数中创建混合连接
- azure-active-directory - Gettiong code=organizationfromtenantguidnotfound 试图通过 Graph API 以用户身份发送电子邮件
- openshift - Openshift 应用程序健康检查