像typescript的静态类型检查可以在运行程序前发现类型错误,还能让编译器提供提示功能.
ts是js的超集,不能直接访问js中全局作用域的变量,比如windows,需要在声明中指定才可以
先安装
npm install --save-dev typescript
或者
yarn add --dev typescript
安装后,我们可以使用ts命令, 我们可以把它放到package.json中
{
// ...
"scripts": {
"build": "tsc",
// ...
},
// ...
}
如果不告诉ts编译器该怎么做,他不会对我们有任何帮助, ts --init可以生成 tsconfig.json
{
"compilerOptions": {
// ...
"rootDir": "src",
"outDir": "build"
// ...
},
bulid
yarn build
npm run build
类型声明
编译器通过类型声明来检查错误与提示,因此需要类型声明文件的支持,(让别的模块能够通过导入调用)方式有两种
1 捆绑在包中, 默认为index.d.ts,或者package.json中typings或者types字段的值
2 放到DefinitelyTyped中,他是微软和开源贡献者共同管理的一个大型声明库
# yarn
yarn add --dev @types/react
# npm
npm i --save-dev @types/react
3 还有一种方式是本地声明,在项目根目录下创建declarations.d.ts
declare module 'querystring'
export function stringify(val: object): string
export function parse(val: string): object
}