类型声明版本:: $3.9.0-dev.20200322$, $3.8.3$
搜索词: 构建,项目引用,观察模式
代码
在构建和观察模式下运行项目:tsc -b -w -v
将新文件添加到其中一个项目的引用中。新文件未被观察进程检测到,因此未编译
重命名项目中的现有文件。编译失败,错误信息为:
File 'filename' not found.
预期行为:
新文件和重命名后的文件都能正确编译
实际行为:
新文件没有被编译。重命名后的文件导致编译失败
类型声明版本:: $3.9.0-dev.20200322$, $3.8.3$
搜索词: 构建,项目引用,观察模式
代码
在构建和观察模式下运行项目:tsc -b -w -v
将新文件添加到其中一个项目的引用中。新文件未被观察进程检测到,因此未编译
重命名项目中的现有文件。编译失败,错误信息为:File 'filename' not found.
预期行为:
新文件和重命名后的文件都能正确编译
实际行为:
新文件没有被编译。重命名后的文件导致编译失败
5条答案
按热度按时间f3temu5u1#
这个不重复你提到的。我们需要详细的步骤来重现问题,以及示例代码,以查看是否有什么东西出错了。
3htmauhk2#
这个问题已经困扰我们至少两年了;我们等待了这么久,但问题仍未解决。我理解在沙箱中重现可能是非常困难的,但仍然,附上一个屏幕录制,展示这个bug的效果,希望能帮助提示一下发生了什么。
这个问题在VSCode编辑器和
tsc --watch
中都可以复现(!!!)。也就是说,这不是我们的构建系统(包括许多组件)的产物,它也影响了以noEmit模式运行的纯真VSCode的TS服务器进程。以下是一个分成三部分的屏幕录制(一个接一个)。
配置:
tsc --watch
进程进行编译,incremental=truetsc --watch
进行编译,emitDeclarationOnly=true和incremental=true基本上,在视频中,出现在node_modules/slapdash-server-ingestion/dist/.../的文件没有被slapdash-server中的watching tsc捕获(node_modules/slapdash-server-ingestion是一个lerna-symlink指向packages/slapdash-server-ingestion)。
我在那里做了什么(按时间顺序):
tsc --watch
进程,然后检出一个从Git中获取的新版本,其中包含出现在slapdash-server-ingestion monorepo项目中的新TS文件(dist/.../FactAllAclsOfAssetAre.ts)。tsc --watch
编译了新的文件(FactAllAclsOfAssetAre.ts)到dist/文件夹。但是,在slapdash-server monorepo项目内部(在第一段视频中的slapdash-server/.../FactAllAclsOfAssetAre.test.ts),编译结果(dist/.../FactAllAclsOfAssetAre.d.ts)不可见:例如,VSCode用红色下划线标记该文件为缺失(尽管它存在),而tsc --watch
也无法看到该文件。现在有趣的部分
tsc --watch
中都不起作用。tsc --watch
指令中做一些虚拟更改,然后撤销它(第二段视频),这将帮助VSCode找到该文件(但显然不会让import
解脱)。似乎观察过程中有一些缓存没有刷新,即使在文件更改时也不会刷新,唯一会刷新的时候是当特定的tsc --watch
语句发生变化时。tsc --watch
语句中做一些虚拟更改并保存它,然后撤销更改并再次保存时,它才会解除对import
文件的锁定。import
语句应用一个虚拟更改(不在代码的其他任何部分!确切地说是在那个特定的import
语句中!),最终才能完全解除所有文件的锁定(第三段视频))。j0pj023g3#
你好!这个帖子有更新吗?看到同样的问题
cigdeys34#
Same issue, on webstorm. Changing tsconfig.json include/exclude patterns isn't helping. Editing and reverting the import statement is the only workaround so far, but not a fix. Can this be looked at please?
2nbm6dog5#
在SvelteKit + Turbo Monorepo设置中遇到了相同的问题。有两种方法可以重现这个问题:
现在运行localhost,它将永远加载......