如何在移动设备上运行TSServer作为背景过程(即使用JavaScriptCore但没有节点;并且避免基于WebVie



我已经为iOS制作了一个简单的JS文本编辑器应用程序;我想使用tsserver获得智能和转渗。我可以看到如何通过节点或通过浏览器运行TSServer(作为打字稿游乐场的一部分 - 但是,它与摩纳哥编辑相同,我希望它无头,但是我没有立即看到如何将它们分开)。/p>

要考虑的困难之一是,它可能需要文件系统访问来加载任何打字稿libs(我将使用许多自定义的液体加载它) - 我不确定如何使用纯粹的JavascriptCore优雅地解决此问题解决方案。

有没有办法仅设置TSServer在移动设备上运行,理想情况下,无需涉及WebView(因为这是不必要的开销)?

我可以看到如何通过节点或通过浏览器(作为打字稿游乐场的一部分)运行tsserver

Micsonception在这里。tsserver 唯一在节点中运行:https://github.com/microsoft/typescript/wiki/wiki/stancealone-server-(TSSSERVER) The TypeScript standalone server (aka tsserver) is a node executable

操场上的运行方式?

Typescript 语言服务https://github.com/microsoft/typescript/wiki/using-the-language-service-api是操场上运行的。它允许您拦截诸如"是否存在此文件"或"请读取此文件"之类的呼叫,然后将其重定向到( disk for Node, server in浏览器中)等。

有没有办法仅设置TSServer在移动设备上运行,理想情况下,无需涉及WebView(因为这是不必要的开销)?

从根本上没有。TSServer不适合非节点环境。

但是,它与摩纳哥编辑一起,我希望它无头,但我没有立即看到如何分开它们

如果您想在浏览器IDE中使用,这是一个不错的免费OSS ONE,确实使用Monaco :https://github.com/agentcooper/typescript-play(但是至少通过其开源源通过🌹)。摩纳哥还不错。您必须从某个地方开始❤

更多

为了在不运行tsc or tsserver的情况下通过某些文件运行打字稿编译器,您有两个选项:

  • Langauge服务/语言服务主机:复杂,但允许您通过实时编辑等您选择的IDE前面。/wiki/使用语言服务 - api
  • 只是编译器API:允许您一次通过一堆TS代码来生成JavaScript/DO错误分析。示例可在此处提供:https://github.com/microsoft/typescript/wiki/using-the-compiler-api

我认为对于您的情况(没有IDE/LIVE代码编辑等),编译器API就足够了。

最新更新