您现在的位置是:首页 > 文章详情

TypeScript 4.3 Beta 发布

日期:2021-04-06点击:546

TypeScript 4.3 Beta 已发布。此版本更新亮点包括:支持自动补全 import 语句、改进 Template String Type(模板字符串类型)、@link标签的编辑器支持、引入static索引签名功能等。

支持自动补全 import 语句

通过利用 auto-imports 功能(原理是提供所有可能的导出,并在文件顶部自动插入导入语句),当开发者输入 import 关键字后即可生成完整的导入语句,其中包括所要编写的路径。

改进 Template String Type

Template String Type(模板字符串类型)是最近版本才引入的类型构造,这些类型可以通过级联来构造新的类似字符串的类型:

 type Color = "red" | "blue"; type Quantity = "one" | "two"; type SeussFish = `${Quantity | Color} fish`; // same as // type SeussFish = "one fish" | "two fish" // | "red fish" | "blue fish";

或匹配其他类似字符串类型的模式:

 declare let s1: `${number}-${number}-${number}`; declare let s2: `1-2-3`; // Works! s1 = s2;

此版本的改进包括:在 TypeScript 推断模板字符串类型的时候,当模板字符串由类似字符串字面量的类型在上下文中类型化时,它将尝试为该表达式指定模板类型。

 function bar(s: string): `hello ${string}` { // Previously an error, now works! return `hello ${s}`; }

另一项改进为 TypeScript 现在可以更好地关联不同看的模板字符串类型,并在它们之间进行推断。

 declare let s: string; declare function f<T extends string>(x: T): T; // Previously: string // Now : `hello-${string}` let x2 = f(`hello ${s}`);

@link标签的编辑器支持

TypeScript 现在支持解析@link标签链接的声明。

 /** * This function depends on {@link bar} */ function foo() { } function bar() { }

引入static索引签名功能

索引签名 (Index Signatures) 支持在某个值上设置比类型显式声明更多的属性。

 class Foo { hello = "hello"; world = 1234; // This is an index signature: [propName: string]: string | number | undefined; } let instance = new Foo(); // Valid assigment instance["whatever"] = 42; // Has type 'string | number | undefined'. let x = instance["something"];

详情查看 发布公告

原文链接:https://www.oschina.net/news/136224/typescript-4-3-beta-released
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章