翻译: TypeScript 1.8 Beta 发布

原文地址:https://blogs.msdn.microsoft.com/typescript/2016/01/28/announcing-typescript-1-8-beta/node

今天,咱们发布了 TypeScript 1.8 Beta,伴随着 1.8 版本带来了大量的变化。欢迎使用并反馈给咱们:send us your feedback. 能够从  Visual Studio 2015, NuGet (Compiler 和 MSBuild task), npm, 或者直接从 source 来获取它.react

对于 NPM 用户,请使用下面的命令来获取。webpack

> npm install -g typescript@beta

 

在 VS Code 中,能够下载上面的包,而后使用下面的提示更新 .vscode/settings.json 文件。git

"typescript.tsdk": "/some/path/to/node_modules/typescript/lib"

 

JavaScript in TypeScript Compilation

在 TypeScript 1.8,TypeScript 编译器能够与 TypeScript 文件一块儿使用 JavaScript 文件。启用这个特性,仅仅须要添加一个编译选项 --allowJs ,或者在 tsconfig.json 配置文件的 compilerOptions 配置节中添加 “allowJS”: true。这是一个很是棒的特性:github

转换 JavaScript 项目到 TypeScript 项目

对于大的项目来讲,从 JavaScript 项目转换到 TypeScript 项目意味着风险。对于具体的项目来讲,简单地将全部的 .js 文件转换为 .ts 文件会致使大量的编译错误。使得转换过程很不友好。如今,经过容许 TypeScript 编译合并编译 JavaScript 代码,就能够一次一个文件地转换,可是仍然容许编译整个项目。这就使得开发者能够彻底掌控转换过程。web

使用第三方的 JavaScript 库即可更加容易

为了在 TypeScript 项目中使用现有的 JavaScript 库,开发者不得不使用类型定义 (.d.ts ) 文件,以便 TypeScript 编译器在编译的时候知道你在作什么,而在运行时,是 JavaScript 引擎知道你在作什么。直到你须要打包你的外部脚本库,都没有问题。到打包这一步,开发者须要第三方的打包器,例如 webpack 或者 browserify 等等。使用 TypeScript 1.8,你只须要简单地在项目中包含第三方的 JavaScript 库,编译器将会处理它,包括 Source  Map!typescript

琐碎的 JavaScript 处理

使用 JavaScript in TypeScript 编译,TypeScript 编译器可使用一样的方式来处理 JavaScript 文件。这包括 ES3/ES5,不一样类型的模块定义,以及打包。例如,对于使用 TypeScript 编译器进行 ES6 到 ES5 降级转换,你只须要使用下面的命令:npm

> tsc --allowJs --outDir out target_file.js

 

扩展的 JSX 支持

通过大量的讨论,TypeScript 1.8 带来了一些关键的改进来扩展 TSX/JSX 的支持。json

定制的 JSX 工厂

伴随 React ,JSX 语法已经不单单用于 React。JSX 工厂容许重写默认的 React 工厂。伴随 --jsx react 使用新的编译标志 --reactNamespace <factory_name> ,TSX 的做者如今能够控制工厂的名称。windows

无状态功能组件

在 React 0.14 中,无状态的功能组件是一个新概念,已经被大量采用。从 TypeScript 1.8 开始,咱们在 TSX 文件中支持无状态的功能组件。

interface GreeterProps {
    name: string;
}

class Greeter extends React.Component<GreeterProps, {}> {
    render() {
        return <div>Hello, {this.props.name}</div>;
    }   
}

//stateless functional component SimpleGreeter
let SimpleGreeter = ({name = ‘world‘}) => <div>Hello, {name}</div>;

 

在 VS2015 中的语法高亮

伴随着 Visual Studio 中的 TypeScript 1.8 更新,JSX 如今能够得到代码分类和着色的改进。

TypeScript Nuget 包

长期以来,咱们的一些用户要求提供官方的 TypeScript Nuget 包,从 1.8 Beta 开始,每一个版本咱们将会经过 Nuget 分发 TypeScript 编译器和 MSBuild 任务,包的连接以下:

TypeScript compiler

TypeScript MSBuild task

另外,咱们还会在 MyGet 提供TypeScript 的每日构建。虽然不提供 build, 可是你能够方便获取,让咱们知道你的想法。你可在这里找到 build:here.

Chakra Core + TypeScript

咱们一直在努力提升 TypeScript 编译器的性能,在  Chakra Core 发布几周以后,咱们对它进行了测试。下面是每一个编译引擎对不一样尺寸的代码进行编译的图表。咱们发现  Chakra Core 有着重要的改进。对比上一个版本有 5-20% 的改进,对于 Node 有 10-50% 提升,基于上述缘由,咱们将在适当的时机切换到 ChakraCore.

还有更多

TypeScript 1.8 还包括许多特性,包括:F-Bounded polymorphism,字符串字面类型等等。若是你但愿深刻了解这些新特性,请查阅:what’s new page. 并且,咱们一直鼓励浏览现有的问题,提交请求,或者直接到  gitter 与咱们交流。

相关文章
相关标签/搜索