VSCode编辑TypeScript文件时频繁出现"failed to save"报错求助
完整报错信息:Failed to save 'Untitled-1, Untitled-1': Unable to write file '/Untitled-1' (Unknown (FileSystemError): Error: EROFS: read-only file system, open '/Untitled-1')

此问题不属于普通文件权限问题,是VS Code的TypeScript相关服务异常时,生成的临时无标题文件写入路径错误指向了只读的系统根目录导致的偶发问题,可按以下步骤排查解决:
解决方案
1. 重启TypeScript语言服务
按Ctrl+Shift+P(Mac设备按Cmd+Shift+P)调出命令面板,执行TypeScript: Restart TS Server命令,重启后观察问题是否复现,该操作可解决大部分偶发的TS服务异常。
2. 排查冲突第三方插件
多数情况下该问题由第三方TS辅助类插件(如自动生成代码、自定义TS校验、自动保存类插件)逻辑异常触发,可按以下步骤定位:
- 打开VS Code扩展面板,搜索
@builtin typescript,确认内置插件「TypeScript and JavaScript Language Features」处于启用状态 - 禁用所有非内置的TS相关插件,逐枚启用测试,定位到触发问题的插件后禁用或卸载即可
3. 手动指定临时文件目录
通过手动指定有读写权限的临时文件路径,避免异常时写入系统根目录:
- 按
Ctrl+,(Mac设备按Cmd+,)打开VS Code设置页 - 搜索配置项「Files: Temp File Dir」,填入当前用户有完全读写权限的目录路径,例如:
- Windows系统:
C:\Users\你的用户名\AppData\Local\Temp\vscode_ts_temp - Mac/Linux系统:
/tmp/vscode_ts_temp
- Windows系统:
- 提前在系统中手动创建上述对应目录,再保存设置即可
4. 统一TypeScript版本
如果项目本地安装的TS版本和VS Code内置版本不兼容,也会触发服务异常,可切换为内置版本解决:
- 打开任意.ts后缀的TypeScript文件,点击编辑器右下角状态栏中的TS版本号
- 在弹出的选项列表中选择「使用VS Code的内置版本」即可
内容的提问来源于stack exchange,提问作者dcsan
相关产品推荐
相关产品推荐

