本提案将添加一个API Program#isSourceFileFromTypeRoots
,它类似于Program#isSourceFileFromExternalLibrary
,但针对typeRoots
。
目前,唯一确定SourceFile是否来自typeRoots
的方法是使用ts.getEffectiveTypeRoots
并检查给定的SourceFile#fileName
是否以任何路径开头。
这在没有符号链接的情况下有效。有了符号链接,就需要在比较之前对所有typeRoots
使用realpath
,因为那已经是实际路径。
即使如此,这也无法涵盖子目录(如node_modules/@types/foo
)或单个文件(如node_modules/@types/foo/index.d.ts
)是符号链接的情况。
相关: fimbullinter/wotan#387
3条答案
按热度按时间8fq7wneg1#
为了确保我理解这个问题,这是为了让你能正确地将"用户代码"与非他们的代码区分开吗?
jaql4c8m2#
这正是我想要做的事情。
eimct9ow3#
看起来这个问题需要引起注意,@RyanCavanaugh@ajafff