前端同学,你到现在还没用 typescript 原因是什么?

2021-07-28 10:36:16 +08:00
 Imindzzz

我认为使用 ts 是只有好处没有坏处的。因为实在没办法的时候也是可以降级到原生 js 的写法的,但是熟悉 ts 后那真是太爽了。

如果你有什么问题可以说出来,看大伙能不能给你一个完美的解决方案。

大家心平气和不要吵架。

11863 次点击
所在节点    TypeScript
124 条回复
Imindzzz
2021-07-28 11:52:22 +08:00
@willygeek007 看上面那句回答你。

@otakustay 应该是初学的多,毕竟前端整天门槛较低,学前端的不一定能熟练使用 ts 。

@erlking 哈哈,逐渐让新人上手嘛,这个对团队整体水平提升也是有帮助的。

@adjusted 这个我到没明显感知,你有测试过吗,具体说说呢。

@h1104350235 这是机会,你如果把工具链什么的都给大伙安排好,他们直接上手舒舒服服的写,那你就是大牛,大伙都的敬礼三分。
zhaol
2021-07-28 11:54:40 +08:00
不用 ts 不会写,现在网上找其他库都要有 ts 版本的才行 @types/xxxx,不然不用。没提示真的难受,特别是函数的参数和返回值,真的能省很多事,不需要看文档才知道这是干嘛的了。就算不跟别人合作,自己的代码,久了也忘了是干嘛的了,还是 ts 省事
Jaosn
2021-07-28 11:54:50 +08:00
我现在有个问题就是,后端接口返回的字段很多,每个都定义一下好麻烦
zhangshine
2021-07-28 11:58:07 +08:00
ts 难度并不高啊,就是有一个熟悉的过程而已。用个 2 个月搬砖效率和 js 没啥区别。以前不用就是懒得学而已,用了之后真香。
Imindzzz
2021-07-28 11:59:37 +08:00
@zhaol 哈哈,同感同感。 不过我补充说明一下,免得大家误会。
没有 @types 的库,非要用也可以用,只是没提示而已。

@Jaosn 看一下我回复 murmur 的,直接复制返回的 json 就行。
Leviathann
2021-07-28 12:22:55 +08:00
我遇到一个问题,ant design mobile 需要用一个 ref,但是 react useref 和 forwardref 的类型怎么都写不对,给的提示信息又是天书,最后实在是烦躁加了个 //ts-ignore,跑起来完全没问题。。如果是完全追求类型安全就很抓狂了
还有就是泛型函数好像没办法限制 T 是两个类型中的一个,多次尝试后写了两个完全一样但是类型不同的函数。。
walpurgis
2021-07-28 12:31:47 +08:00
@Jaosn 可以根据 OpenAPI 文档自动生成对象的 ts interface,不用手写
Vegetable
2021-07-28 12:41:06 +08:00
因为 vue2...
lonelyway
2021-07-28 13:24:26 +08:00
不要为了 TS 而 TS,有必要就上,我个人觉得弱类型反而是 js 的一大优势
powerN
2021-07-28 13:37:59 +08:00
1,什么时候用枚举,什么时候用联合类型

enum Direction {
left = 'left',
right = 'right',
top = 'top',
bottom = 'bottom'
}

type Direction = 'left' | 'right' | 'top' | 'bottom'

2,当我有一个枚举对象或者一个联合类型时,我如何方便快捷地转化成一个 list 对象,提供给 select 组件做后选项

例如上面的 Direction , 我想的到一个这样的结果(当然,现在是手动维护的):

const list = {
left : 'left',
right : 'right',
top : 'top',
bottom : 'bottom'
}
dasbn
2021-07-28 13:42:11 +08:00
webstrom 之类的工具已经让我用上类似 TS 的提示,而我自己用 JS 又不用类型体操(
limi58
2021-07-28 13:46:09 +08:00
因为我在 terminal 上用 vim,ts 提示不方便
leoQaQ
2021-07-28 14:23:54 +08:00
因为只有我一个前端
Kmmoonlight
2021-07-28 14:28:47 +08:00
@lemonnTr vue2 也可以上 TS 的,我们就加了
HAYWAEL
2021-07-28 14:29:24 +08:00
之前在 Vue2 时期就试着引入 ts 了,因为没做什么强制,后来被用成了 anyScript,前段时间在一个 taro 项目中用了,结合编辑器的提示功能,写起代码还是很爽的,最近也试着用 Nest 。
ALVC666
2021-07-28 14:29:32 +08:00
vue2 js
vue3 + tsx
ts + react
现在几个项目都这样轮轱辘转
jrtzxh020
2021-07-28 14:53:45 +08:00
来来去去就那么几个页面,真没必要。。。
charlie21
2021-07-28 15:33:10 +08:00
领导没说让用就不用,领导让用就用,还能为什么 ... 当然如果是个人项目是可以用的,用 js 写一版再用 ts 写一版权当提升熟悉度
Rrrrrr
2021-07-28 16:03:20 +08:00
牺牲了 js 的灵活,增加学习成本,排错时间成本,不能原生地跑在浏览器等
muyue08
2021-07-28 16:36:31 +08:00
@Shook 兄弟,请教怎么用 api-generator + swagger 生成接口,有相关的资料或者文档可以发一下看看吗,谢谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/792205

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX