首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过API实例化TypeScript LanguageService w/plugins

通过API实例化TypeScript LanguageService w/plugins
EN

Stack Overflow用户
提问于 2018-06-06 22:15:25
回答 1查看 212关注 0票数 2

如何使用TypeScript编译器API用语言服务插件实例化languageService?我原以为createLanguageService会做到这一点,但它似乎并没有加载插件。

这个包在某个地方的tsserver里了吗?理想情况下,我想运行所有的过程中的一切。是否需要实例化某种ServerHost来让languageService访问require() node_modules?

我的动机是:我想用编程的方式将插件快速修复应用到我正在构建的CLI工具的代码库中。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-07 03:59:32

我想我想明白了。import * as ts from 'typescript/lib/tsserverlibrary'; (在编写插件时使用的相同导入)并创建一个new ts.server.ProjectService。然后通过projectService.openClientFile打开一个源文件,这将导致服务自动获取您的tsconfig,并创建一个新的ConfiguredProject,您可以通过各种方法检索它。然后是configuredProject.getLanguageService()

您必须设置serverHost.require,否则服务无法加载插件,它们将被跳过。我从src/server/server.ts复制了TS的内部实现

我遗漏了很多杂乱无章的细节,但这些都是步骤。Intellisense告诉您其他您需要做的事情。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50730406

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档