vue3.0 有多少人会上 ts,还是继续用 js - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
DigitalHarace
V2EX    程序员

vue3.0 有多少人会上 ts,还是继续用 js

  •  
  •   DigitalHarace 2020-12-24 15:30:51 +08:00 14347 次点击
    这是一个创建于 1758 天前的主题,其中的信息可能已经有所发展或是发生改变。

    vue3.0 ts 会成为主流写法么,还是 js 依然主流。

    95 条回复    2020-12-26 13:10:29 +08:00
    DeWhite
        1
    DeWhite  
       2020-12-24 15:33:43 +08:00
    ts 应该是大方向吧,确实协同上面好了一些。
    阅读也好阅读了一点。
    DigitalHarace
        2
    DigitalHarace  
    OP
       2020-12-24 15:35:50 +08:00
    来,统计下。看看大家上 ts 还是 js 的比例为多少
    ruoxie
        3
    ruoxie  
       2020-12-24 15:36:53 +08:00
    我自己的项目上了 tsx,而且完全用 composition api,跟写 react hook 似的
    Adaocean
        4
    Adaocean  
       2020-12-24 15:38:07 +08:00   1
    2020 年了还有人不用 TS 吗?不会吧不会吧
    shakaraka
        5
    shakaraka  
    PRO
       2020-12-24 15:46:37 +08:00   1
    对于 vue 来说 js 还会是主流。有几个原因
    1 、非强制性。
    2 、vue 上手难度低,导致新手一般只用 js 即可,会不会 ts 最终的成品其实都一样(能干活就行)
    3 、周边生态并非全是 ts (全家桶以及热门库除外),这样用起来会导致体验断层
    miloooz
        6
    miloooz  
       2020-12-24 15:51:26 +08:00
    已经将 react vue 小程序都改成 ts 写了,舒服的很,最近写了个 vue3.0 的小东西,ts 体验还行。
    linkopeneyes
        span class="no">7
    linkopeneyes  
       2020-12-24 15:58:20 +08:00
    如果不上 ts,那些魔法 api,我会把代码写的很乱
    LokiSharp
        8
    LokiSharp  
       2020-12-24 15:58:39 +08:00
    都说 JS 简单,我怎么觉得 TS 比 JS 简单呢。。。学不会 JS 才用 TS 的,难道只有我一个么。。。
    murmur
        9
    murmur  
       2020-12-24 16:03:08 +08:00
    @LokiSharp ts 比 js 多,肯定是 ts 约束更难,而且 ts 有的用了注解就跟原始 api 更难了,ts 唯一的好处就是有.d.ts 联想更准确
    murmur
        10
    murmur  
       2020-12-24 16:03:53 +08:00
    *用了注解跟原始 api 不一样了
    LokiSharp
        11
    LokiSharp  
       2020-12-24 16:11:04 +08:00
    @murmur #9 但是 JS 参数全靠猜,代码量稍微大一点就很折腾了
    jones2000
        12
    jones2000  
       2020-12-24 16:21:49 +08:00   1
    js 方便, 直接浏览器就可以调试, ts 还要编译 太麻烦了.
    shaozelin030405
        13
    shaozelin030405  
       2020-12-24 16:25:20 +08:00
    @jones2000 这两个不矛盾吧。。。
    Oktfolio
        14
    Oktfolio  
       2020-12-24 16:29:18 +08:00   4
    前端写的 React + TS,看得我太难受了,TypeScript 写成了 AnyScript 。
    KuroNekoFan
        15
    KuroNekoFan  
       2020-12-24 16:31:14 +08:00 via iPhone
    其实在用对象解构做参数和 es6module 的前提下,js 也能有相当明确的参数提示
    要不要强类型约束就见仁见智了
    Jaosn
        16
    Jaosn  
       2020-12-24 16:33:54 +08:00
    新项目都在用 Vue3 + TS,Composition API 简直不要太香!
    ArrayBuffer
        17
    ArrayBuffer  
       2020-12-24 16:39:14 +08:00
    目前还没上 vue3, 但项目里已经配置好了 ts, ts 是可选并且推荐使用的
    现在在 .vue 文件里写某个变量的时候没有语法提示, 不知道是不是我的姿势不对
    yhxx
        18
    yhxx  
       2020-12-24 16:46:00 +08:00   23
    我会选 TS,但是我还是看不惯那些穆斯林一样『不上 TS 就是你菜、你要被钉在前端耻辱柱上、0202 年了不会还有人没上 TS 吧不会吧不会吧』的言论
    blindie
        19
    blindie  
       2020-12-24 16:52:25 +08:00 via Android
    @Oktfolio #14 AnyScript 真实
    yaphets666
        20
    yaphets666  
       2020-12-24 16:58:09 +08:00
    有条件肯定搞 TS 没条件 JS 一点也不差
    g00001
        21
    g00001  
       2020-12-24 16:59:27 +08:00   2
    一天到晚总是忙着在网上摸鱼发表高见的,用啥都困难。
    dbres
        22
    dbres  
       2020-12-24 17:45:41 +08:00
    @Oktfolio 万物皆可 any [doge]

    这还不如 js 呢
    lneoi
        23
    lneoi  
       2020-12-24 17:59:32 +08:00
    写 ts 大半时间在写注解.. 特别是比较自由的泛型的注解
    youla
        24
    youla  
       2020-12-24 18:04:06 +08:00
    身为一个做着以 c#开发为主的程序员,却连 ts 都完全不会,我很抱歉!!
    creanme
        25
    creanme  
       2020-12-24 18:07:24 +08:00 via Android
    @LokiSharp #8 别逗,ts 类型很复杂的
    charlie21
        26
    charlie21  
       2020-12-24 18:30:40 +08:00
    从单纯的 API caller 的角度,ts 和 js 都没啥区别。
    更值得关心的问题是 OOP vs FP
    jones2000
        27
    jones2000  
       2020-12-24 18:31:58 +08:00
    @shaozelin030405 低层模块直接 js 裸写就行了, 不需要 vue, 直接浏览器开发调试就可以了. 上层 UI 相关的才会用 VUE,不过我只负责底层的, 只开发 js 基础模块,其他都不用管,由别的部门负责。https://github.com/jones2000/HQChart  这个是我 js 裸写的,图形插件, 8W行代码左右吧, 直接 js 上,方便。
    drydiy
        28
    drydiy  
       2020-12-24 18:33:20 +08:00
    个人看法:
    1 、对于业务经常变动的业务项目,不适合用 ts,因为快速才是此类需求最重要的。
    2 、对于工具类 /基础设施类项目,最好上 ts 。
    hoyixi
        29
    hoyixi  
       2020-12-24 18:34:20 +08:00
    这让我想起了,当年曾红极一时的 CoffeeScript
    keepeye
        30
    keepeye  
       2020-12-24 18:37:09 +08:00
    是个学 ts 的机会吧
    ConradG
        31
    ConradG  
       2020-12-24 18:43:00 +08:00
    预期上不会,ts 的门槛毕竟在那,而且未来并不是很明朗。发展得好可能 vue4.0 会成为主流。
    tinycold
        32
    tinycold  
       2020-12-24 18:44:47 +08:00 via Android
    我觉得,不 TS 不行,但是也别搞得太过极端。

    适当的约束和说明代码可读性的确高了很多,只要不是生毛子乱来就海星。

    但是像那些"极客"天天做类型体操也受不了
    debuggerx
        33
    debuggerx  
       2020-12-24 19:10:09 +08:00
    有些人,恨不得把 java 那样的强类型语言写成 python
    也有些人,恨不得把 c 那样的弱类型语言写成 C#
    没有对错,取决于场景和个人思维模式……
    同样是前端开发,有时思维模式的区别比男人和女人的对立还严重-_-||
    作为前后端都写、大小团队都待着、过带过人也被人带过的伪全栈,总的来说我还是倾向 ts 的……但真要单从语言语法上说,其实我更喜欢很多人讨厌的 dart,虽然最新的 dart 在搞的空安全语法我不是很能接受。。。
    LokiSharp
        34
    LokiSharp  
       2020-12-24 19:46:05 +08:00 via iPhone
    @creanme 除了搭框架要用泛型的比较复杂之外,不都是直接套娃就行的么
    loading
        35
    loading  
       2020-12-24 19:54:51 +08:00 via Android
    想搭车问个 ts 入门教程,文本和视频都可以。
    rophie123
        36
    rophie123  
       2020-12-24 19:59:12 +08:00 via iPhone
    一个前端能有多少自己写的 JS ?
    lancelock
        37
    lancelock  
       2020-12-24 20:28:34 +08:00 via iPhone
    公司还是 vue2,ts 也是不用想了。
    我个人项目之前都用 react hooks,最近改用 blazor 写了
    suzic
        38
    suzic  
       2020-12-24 20:30:03 +08:00 via Android
    在混合用,通用组件用 ts,业务相关的用 js
    revalue
        39
    revalue  
       2020-12-24 23:14:09 +08:00
    @loading 2010 年入驻 V 站的 还问这种问题?不就是分分钟的事吗
    loading
        40
    loading  
       2020-12-24 23:28:27 +08:00 via Android   3
    @revalue 每个人都不是全知全能的,万一有更好的呢?我一直是虚心求教的心态的。
    namelosw
        41
    namelosw  
       2020-12-24 23:39:06 +08:00   1
    @yhxx TS 就 TS, 为啥穆斯林? 穆斯林把你钉耻辱柱上了?
    love
        42
    love  
       2020-12-25 08:03:37 +08:00 via Android
    没有 ts 太容易出错了,作为弱类型语言有时类型不对都不报错,感觉就是在关灯写代码,付出的注意力足够写类型注释了
    rodrick
        43
    rodrick  
       2020-12-25 08:07:19 +08:00
    问问大家学会 ts 花了多久,有什么好的学习资源推荐的
    oatw
        44
    oatw  
       2020-12-25 08:11:13 +08:00
    ts 对 js 这个动态语言的灵活性牺牲太大了,语法层面也太唆,个人不是很喜欢。
    感觉比较适合写惯了 java 的人,或者团队里需要堆人的时候用来加强约束。

    从单兵作战的角度来说,效率和表现力就是王道,还不如用 coffee 呢。
    pecopeco
        45
    pecopeco  
       2020-12-25 08:16:10 +08:00 via Android
    至少现在时机不太成熟,很多插件引入进来跟 ts 不兼容会报错,项目着急上线的时候为这种不必要的事情徒费心力
    myCupOfTea
        46
    myCupOfTea  
       2020-12-25 08:48:48 +08:00
    ts 挺好,已经写了一年呢 不想回去写 js
    ciddechan
        47
    ciddechan  
       2020-12-25 08:50:30 +08:00
    JS 的容错性是我喜欢它的原因,没有之一
    Reapper
        48
    Reapper  
       2020-12-25 09:08:02 +08:00
    js
    fengxianqi
        49
    fengxianqi  
       2020-12-25 09:17:48 +08:00 via Android
    用了一段时间,自己觉得很好,可阅读性可维护性都提高了,但发现团队其他小伙伴觉得定义接口返回字段特别麻烦,所以有些索性就用 any 了,现在处于一种混用的状态。

    业务代码用 js,通用组件用 ts 或许是个不错的方案。
    h82258652
        50
    h82258652  
       2020-12-25 09:18:07 +08:00
    希望是 ts,但实际只会是 js 。公司那群懒人学新技术是不可能的,只会混。
    除非哪天像 angular 强制只能 ts 。
    IanHo
        51
    IanHo  
       2020-12-25 09:27:18 +08:00
    ts 太舒服了,夏天开始就用了。
    icanfork
        52
    icanfork  
       2020-12-25 09:27:38 +08:00
    @yhxx #18 哈哈哈哈哈,你的结论太真实了,我也不知道怎么形容这种人,感觉很邪教,我信仰的你不信仰,就是异类。原来描述的就是绿绿群体。
    supuwoerc
        53
    supuwoerc  
       2020-12-25 09:30:13 +08:00   4
    2020 年底了,还有人因为用 TS 优越,不会吧不会吧
    Yuiham
        54
    Yuiham  
       2020-12-25 09:40:41 +08:00 via Android
    @charlie21 怎么用 ts 还是用 js 还跟 OOP, FP 有关
    fy
        55
    fy  
       2020-12-25 09:41:50 +08:00   1
    vue2 就在用 ts 了,现在问我 vue3 ?
    creanme
        56
    creanme  
       2020-12-25 10:08:03 +08:00 via Android   1
    @fengxianqi #49 swagger 或者 yapi 都有生成 ts 代码的插件
    windyCity1
        57
    windyCity1  
       2020-12-25 10:21:18 +08:00
    ts 和 js 混用吧,团队有些同事并不适应也不喜欢类型强约束
    MengiNo
        58
    MengiNo  
       2020-12-25 10:25:02 +08:00
    讲道理感觉 ts 还是友好一些,毕竟什么事情都是确定的,出了问题是微软的锅。js 毕竟有断层 10 年的历史包袱,当然大概率是我菜,总有一个设备兼容不了。
    PinkRabbit
        59
    PinkRabbit  
       2020-12-25 10:29:44 +08:00
    这难道不是看团队选择吗,单人还是 JS,人多了开发还是 TS 好
    freak118
        60
    freak118  
       2020-12-25 10:32:17 +08:00
    @windyCity1 我们是通用组件用
    HolmLoh
        61
    HolmLoh  
       2020-12-25 10:34:48 +08:00
    服务端技术栈平时一般是写 java 的,所以 ts 很快上手,要做前端的时候我都直接用 ts
    abelmakihara
        62
    abelmakihara  
       2020-12-25 10:35:27 +08:00
    有些人 any 一把梭的
    没有 @type 爆一堆红的库
    还不如用 js 呢
    到底是不是为上而上各自心里都有数
    samin
        63
    samin  
       2020-12-25 10:36:26 +08:00
    啥 nodejs ts 都是后台小伙伴搞的 纯前端的小伙伴是几乎不大可能有工程化思想的 哈哈 坐等 diss
    wangyzj
        64
    wangyzj  
       2020-12-25 10:36:51 +08:00
    还在用 vue2,而且我觉得还会用很久
    abelmakihara
        65
    abelmakihara  
       2020-12-25 10:39:38 +08:00
    哦还有公司内部的一些 js 库
    一装全红了
    还得去补定义文件
    我是恶心了
    zhuweiyou
        66
    zhuweiyou  
       2020-12-25 10:48:50 +08:00
    我做的项目(多是活动页)用 TS 没感觉有什么优势,JS 开发效率高多了.
    windyCity1
        67
    windyCity1  
       2020-12-25 10:57:30 +08:00
    @freak118 #60 差不多,在公司项目能写通用组件的人一般都能接受 ts,调用的人就不一定了
    EPr2hh6LADQWqRVH
        68
    EPr2hh6LADQWqRVH  
       2020-12-25 12:00:16 +08:00   1
    少点人上吧,尤雨溪自己都没理解 ts,Vue 的 ts 也能叫 ts?
    少带歪点人吧
    lifefriend
        69
    lifefriend  
       2020-12-25 13:42:41 +08:00
    个人更愿意 js,ts 就像用一个二手东西。
    heyjei
        70
    heyjei  
       2020-12-25 13:53:15 +08:00
    说好的 Type,最后都变成了 Any 。
    faceRollingKB
        71
    faceRollingKB  
       2020-12-25 14:10:49 +08:00
    vue2.6 尝试过 ts 了,体验很不好,一两年内不打算再折腾了
    shenyu1996
        72
    shenyu1996  
       2020-12-25 14:15:14 +08:00
    这也要看做什么业务吧
    要是接口返回属性天天改,用 ts 反而头疼
    还有那种这个项目这周就要的 哪有时间用 ts 慢慢写
    no1xsyzy
        73
    no1xsyzy  
       2020-12-25 14:22:35 +08:00
    @LokiSharp 是补全依赖症,享受了现代的便利
    不是 TS 比 JS 简单,而是 TS+IDE 比 JS / JS+IDE 简单。

    @debuggerx Typed Racket:秒了。
    LokiSharp
        74
    LokiSharp  
       2020-12-25 14:46:29 +08:00
    @no1xsyzy #73 现在写代码不用 IDE 的不多了吧,TS 就算配合 VSCode 代码提示也很舒服了
    no1xsyzy
        75
    no1xsyzy  
       2020-12-25 14:50:07 +08:00
    @LokiSharp 倒不是特指 IDE,还是补全依赖症,是富贵病(
    玩笑归玩笑,这是好事
    lozzow
        76
    lozzow  
       2020-12-25 14:56:29 +08:00
    TS 在工程化上面比 js 好太多,写了一段时间的 TS 后,获取写 py,越来越喜欢写函数注解了
    dabaicai2016
        77
    dabaicai2016  
       2020-12-25 15:02:08 +08:00
    @zmlq7 你是高级前端吗
    devwolf
        78
    devwolf  
       2020-12-25 15:02:10 +08:00
    撇开需求和条件讨论使用 ts 还是 js,也是一种耍流氓。

    #4 这种无脑带节奏的,见一个 b 一个
    jankerli
        79
    jankerli  
       2020-12-25 15:03:49 +08:00
    用习惯了 ts,感觉回不去 js 了
    devwolf
        80
    devwolf  
       2020-12-25 15:06:22 +08:00
    @devwolf 龟龟,第一次 b 人,原来 b 了楼层会变。同 yhxx 一样 看不惯“20XX 年了不会还有人没上 TS 吧不会吧不会吧”
    byzf
        81
    byzf  
       2020-12-25 15:10:13 +08:00
    ts 对 js 老手来说基本是无缝的,也没啥上不上的,但个人认为目前 ts 大多数库里到处是 any,几年前就这样估计未来也不会改变,结果就是上不上 ts 没有特别的区别。
    toesbieya
        82
    toesbieya  
       2020-12-25 15:13:13 +08:00
    ts 和 go 、kotlin 一样太丑了,我是不能理解为什么要把变量声明放在后面,还说啥写惯了 java 的很容易适应,这压根就适应不起来
    kekeekehernando
        83
    kekeekehernando  
       2020-12-25 15:26:36 +08:00
    我公司的项目前端只有我一个人开发
    用 TS 给自己添堵吗
    pecopeco
        84
    pecopeco  
       2020-12-25 15:52:07 +08:00 via Android
    @samin 以大部分前端项目的复杂度,还够不上谈工程化,快速上线迭代才是首要考虑的
    pecopeco
        85
    pecopeco  
       2020-12-25 15:56:27 +08:00 via Android
    如果 js 的动态化灵活性成了缺点,那它在 8 年前 ts 发布的时候就已经死了
    miloooz
        86
    miloooz  
       2020-12-25 16:32:05 +08:00
    @dabaicai2016 我可算不上,用着玩呗,反正随我。
    andyskaura
        87
    andyskaura  
       2020-12-25 16:42:56 +08:00
    @kekeekehernando 我也是一个人一个项目 我更偏向于用 ts
    GenericClass
        88
    GenericClass  
       2020-12-25 16:47:15 +08:00
    Vue 2 + Composition API + ts 体验良好
    反正公司就一个前端随便瞎搞
    ideacco
        89
    ideacco  
       2020-12-25 16:55:06 +08:00
    any + TS 走一波
    frankkai
        90
    frankkai  
       2020-12-25 17:03:45 +08:00
    新项目可以
    老项目可以但没必要
    matatabi
        91
    matatabi  
       2020-12-25 17:08:47 +08:00
    0202 年了不会还有人没上 TS 吧不会吧不会吧
    chengxy
        92
    chengxy  
       2020-12-25 18:04:57 +08:00
    @ideacco #89 你这还不如 js 呢,毕竟少写了: any
    GiantHard
        93
    GiantHard  
       2020-12-25 20:18:36 +08:00
    Vue3 没有 TS 的话,经常忘写 someRef.value
    pixiaotiao
        94
    pixiaotiao  
       2020-12-25 20:30:30 +08:00 via Android
    TS 不错
    94
        95
    94  
       2020-12-26 13:10:29 +08:00 via iPhone
    大概率不会,取决于公司规模和项目开发周期。
    基本没有多人合作和短而多的敏捷开发♂
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5365 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms PVG 16:38 LAX 01:38 JFK 04:38
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86