我的处境:
{ id: number, name: string }的对象)。到目前为止我所做的:
我有一个程序,它生成一些TypeScript代码,基本上是从api中提取数据,然后查看TypeScript编译器是否同意它与接口匹配。
最终的结果似乎是:
import { User } from './user';
function verify<T>(data: T) {}
verify<User>({ id: 123, name: 'Joe' });
verify<User>({ id: 123, name: 17 }); // <-- obviously, this should give an error生成这段代码已经全部完成,但是我现在需要让编译器键入check。我已经在类型记录编译器API中挖掘了一段时间,并且一直陷入困境,因为所有我需要的函数都采用了一个文件名(即磁盘上的路径),而不是一串代码。我理解,由于对其他文件的引用,需要有一个与代码相关联的路径,但是我找不到任何方法来传递它。
我想避免将这些文件写入磁盘,因为
(这看起来有点傻,因为它只是从磁盘上读出来
它可能会在源文件中变得非常混乱,或者我不得不把它放在一个单独的文件夹中,然后重写所有的导入语句。
我的问题是:
有什么方法可以键入-检查TypeScript代码的字符串吗?
发布于 2017-04-25 23:53:21
两解
不必仅仅为了运行ts就将js写到磁盘上
我想避免将这些文件写入磁盘,因为
您可以使用ts-node:https://github.com/TypeStrong/ts-node
检查一串js
一串JS很容易检查。只需使用编译器API中的ts.transpile即可。上面说..。您不想只检查一串js。你想要检查一组文件。因此,建议只使用ts节点。
https://stackoverflow.com/questions/43615210
复制相似问题