环境第一个ts项目,配置入门集大成
https://segmentfault.com/a/1190000007574276
配置文件注意点
"compilerOptions"是编译选项,具体详情,请参见:
中文文档
英文文档
tsconfig.json 简单配置注意事项
https://segmentfault.com/a/1190000007574276
编译找不到模块 ( 如 Cannot find module 'http' )
https://cnodejs.org/topic/56f214940a5a2cfb3ad14959
在.ts中引用node系统库呢,如http、fs等,没有他们的d.ts啊
【注:虽然编译错误,但是仍然可以生成js且可运行。。。】
stz: npm install typings -g
后会在npm全局目录多一个 typings,里面有已经安装的模块的所有 dt文件。 .npm-global/lib/node_modules/typings/node_modules
然后 typings init 会在项目目录生成 typings.json , 我估计它是来存类型引用的。
但是再用 typings install http --global --save 就挂了,报错是:
caused by https://api.typings.org/entries/npm/http/versions/latest responded with 404
搜索错误 caused by https://api.typings.org/entries/npm/node/versions/latest responded with 404
找到此文: http://www.it1352.com/913084.html
typings install --global --save dt~node 后这时可以看到typings.json变成这样:
{
"dependencies": {},
"globalDependencies": {
"node": "registry:dt/node#7.0.0+20170322231424"
}
}
总结: 最终解决方法:
npm install typings -g
typings init
typings search node # 只能把node安装进来,因为它包含http等模块
typings install --global --save dt~node
后记 第三方模块查找和安装的渠道
对于内建模块,安装一个@types/node模块可以整体解决模块的声明文件问题。那么,对于浩如烟海的第三方模块,该怎么办呢?官方和社区中也提供了查找和安装的渠道:
typings 目前我用的是这种方式
DefinitelyTyped
TypeSearch 已经访问不了
三者区别: https://www.cnblogs.com/haogj/p/6194472.html @Types
TS 代码提示Typings 和 @types
TypeScript在node项目中的实践
https://zhuanlan.zhihu.com/p/40500697
重要特性:
任何一个变量的引用,都需要指定自己的类型,而你下边在代码中可以用什么,支持什么方法,都需要在上边进行定义.
另外一个由静态编译类型带来的好处,就是函数签名。
还是就像上边所说的,因为是一个动态的脚本语言,所以很难有编辑器能够在开发期间正确地告诉你所要调用的一个函数需要传递什么参数,函数会返回什么类型的返回值。
这是最基础的、能够让程序更加稳定的两个特性,当然,还有更多的功能在TS中的:TypeScript | Handbook
一些使用上的弊端
自定义tsd是非常头大的问题
本来我也想用typescript,结果分析之后想到需要自己去定义tsd文件的时候就否决了,虽然现在很多库已经有现存的tsd文件了,但是还是有很多库是没有tsd并且版本也没跟上最新版本,需要自己去写,想想就醉了。typescript本身很好,但tsd文件这个问题没有好的解决方案,要想真用起来很麻烦。
绕过可以用: import xxx = require(“xxx”)
网友评论