V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
RiverRay
V2EX  ›  Node.js

还有多少前端搞不懂 package 的版本号规则...

  •  
  •   RiverRay · 56 天前 · 4516 次点击
    这是一个创建于 56 天前的主题,其中的信息可能已经有所发展或是发生改变。
    前端 小 B 今日发出灵魂提问:

    package.json 里说了 "pnpm": "^8.6.3"

    为啥用不了 pnpm 9

    我:?????

    33 条回复    2024-07-16 15:39:33 +08:00
    chenliangngng
        1
    chenliangngng  
       56 天前   ❤️ 1
    如果他比你工资低,那么可能没啥问题,如果他比你工资高,那你质疑有理
    wyl986
        2
    wyl986  
       56 天前   ❤️ 2
    所以我觉得说现在前端卷、java 卷其实很扯;我遇到过好几个前端、java 就只知道 csdn ,上不来 github ;好几个前端连 https://developer.mozilla.org/ 都不知道;更要命的是好多赛博文盲也敢入行当程序员,连最基本的在 win 上面安装 nodejs 都能给下载到收费版本的,你还指望这些人会用 nvm 、会 vim
    LandCruiser
        3
    LandCruiser  
       56 天前   ❤️ 1
    @wyl986 菜鸟大把和卷不冲突,岗位就 10 个有 100 个卷王,1000 个菜鸟,很正常。
    DOLLOR
        4
    DOLLOR  
       56 天前
    @LandCruiser
    程序员严重过剩了,v2 上只要是询问转行当程序员的,我都是一刀切反对。
    nim
        5
    nim  
       56 天前 via iPhone   ❤️ 13
    很多年前面试的时候就发现了,程序员之间有点文人相轻的感觉。知道点别人晚知道的东西 可悲的自信心顿时膨胀了 重要吗 不重要
    C4D4zRNpq9vFSlJW
        6
    C4D4zRNpq9vFSlJW  
       56 天前   ❤️ 4
    1.“前端 小 B ”是什么?
    2.没有人生下来就清楚所有东西。
    3.你也有还没搞懂的东西。
    4.你大概就是那种面试者有一个问题答不上来就嘴角上扬、洋洋得意的面试官吧。
    5.“前端 小 B ”的意思你心里清楚,但我们不知道,短短几个字就已经暴露你至少是一个以自我为中心的家伙。
    6.上一个关于小 B 的帖子也是一样的口气呢 https://v2ex.com/t/1055812 而且同样的东西这里发,即刻也发。
    shizhibuyu2023
        7
    shizhibuyu2023  
       56 天前
    说明他可能之前的工作中一直有大佬贴心照顾,没处理过大版本升级之类的问题,也没有面面俱到地学过一款包管理工具,不知道很正常,又不影响开发
    shui14
        8
    shui14  
       56 天前
    这个行业被搞坏主要是混子太多。混碗饭也没什么,普通人本来就是混,主要是相当一部分不自知,这个群体很浮躁。
    当把“向上管理”这类奉为圭臬时,这个行业就臭了。当初 php 与 java 吵的时候好歹还能理性谦让,现在的前端圈听不下一点不同的想法,互相瞧不上。就工作能力来说,先不管什么技术路线,十年前的贴吧,人家 bb 手撸都全方位吊打。还有各个吹破天的用户体验团队,最后的产品还没有 jquery 时代舒服,jq 可能没有 css3 或者 shader 动画流畅,但是那个时候的产品可以看到别人用了心思,产品让人的感受不过时。
    跟以前的书呆子一样,没有自己的理解,会背套路,然后相互 diss ,做题家挺形象
    jinker
        9
    jinker  
       56 天前 via Android
    我也不懂,虚心求教为什么?
    povsister
        10
    povsister  
       56 天前
    虽然#5 说的很对,但如果我在工作中遇到这种极品同事,我的血压也会忍不住往上涨的。

    这种问题好比你找了个家政打扫,上门了问你怎么擦桌子还要用抹布的离谱问题。
    RiverRay
        12
    RiverRay  
    OP
       56 天前 via iPhone   ❤️ 2
    @jinker
    8 是主要版本号
    6 是次要版本号
    3 是补丁版本号
    使用 ^ 表示,你可以自动接收到所有 8.x.x 的更新,只要这些更新不会增加主要版本号。你可以自动更新到 8.7.0 、8.9.5 等,但不会自动更新到 9.0.0 或更高的主要版本,应为主版本大概率有不兼容行为(默认假设
    lisongeee
        13
    lisongeee  
       56 天前
    这个版本约束用的 https://semver.org/lang/zh-CN/ 规范

    很多包管理器都支持,比如 rust-cargo/js-npm/dart-pub/php-composer

    这东西和前端没关系,跟人有关系

    另外 前端另一个主流包管理 pnpm 现在安装新包默认是固定版本,不再默认使用 semver 规范里的范围版本
    angrylid
        14
    angrylid  
       56 天前
    不知道 semver 其实也没什么,谁都不是生来什么都知道的

    但是他为什么不问搜索引擎和大语言模型,而能让你知道他不懂这个?
    lisongeee
        15
    lisongeee  
       56 天前   ❤️ 1
    # 12

    > 你可以自动接收到所有 8.x.x 的更新

    并不是,在默认有 lock 文件的情况下,安装的是 lock 里的版本,并不是 8.latest.latest

    你需要删除 lock 文件重新安装,才能接收到 8.latest.latest

    虽然规范规定了兼容性是这样,但是开发者可不一定遵守,比如 https://www.npmjs.com/package/vue-cropper 在某个版本出现了破坏性更改(改变了默认导出),但是并没有改变主版本号

    规范这东西不一定每开发者都能严格遵守
    jones2000
        16
    jones2000  
       56 天前
    这个东西必须懂吗? 我就不懂, 但这个不耽误我开发前端。
    dasbn
        17
    dasbn  
       56 天前
    如果浪费大佬的时间,请大佬忽略就好。
    首先得看一下他提问的方式,以及自己的尝试,能给出具体报错信息的我感觉还是会给他看一眼,帮他先解决,至少比发个贴节省时间,而且 B 站用户不会看这个贴子,最好是放在 B 站专栏,搞个常见问题汇总,有人问就先去看文章。

    只是我个人想法。大佬完全可以忽略我的想法,毕竟大佬的时间是宝贵的
    v21984
        18
    v21984  
       56 天前
    用 "packageManager" 限制更恶心
    esee
        19
    esee  
       56 天前
    @wyl986 这个网站我知道,但是老实说我真没上过几次。
    CLMan
        20
    CLMan  
       56 天前
    https://docs.npmjs.com/cli/v10/configuring-npm/package-json#dependencies

    有的人习惯自己解决问题,有的人习惯问问题,过于独立或者过于依赖别人其实都不好。
    RiverRay
        21
    RiverRay  
    OP
       55 天前
    大家放心哈哈哈哈

    我人还是比较 nice 的,

    组里比较有意思的技术问题,我就会放到 v 站上来给大家分享

    尤其是楼下的评论哈哈

    看着大家你一言我一嘴的, 比单独写个笔记强多了

    (: 小 B 是我好朋友, 我们比较聊的开
    RotJun
        22
    RotJun  
       55 天前
    @wyl986 其他的不说,nvm 是真的巨好用
    tyx1703
        23
    tyx1703  
       55 天前 via iPhone
    @RiverRay 补充一点:主版本号为 0 的情况下,^匹配有一些差异,会固定次版本号,查找最新的修订版本
    wuhao747003943
        24
    wuhao747003943  
       55 天前
    @wyl986 #2 说卷的基本都是白嫖自学跟培训班出来的,想拿高薪又没硬实力!
    TomVista
        25
    TomVista  
       55 天前
    太多了 , 多少著名库破坏性更新 , 不加大版本的 , 1.0.0=>2.0.0
    me1onsoda
        26
    me1onsoda  
       54 天前
    @wyl986 最卷的地方通常就是低端劳动力密集的地方
    zb1141920796
        27
    zb1141920796  
       54 天前   ❤️ 1
    @nim 确实,我都不知道有啥好得意的,闻道有先后,术业有专攻,懂得越多才会发现要学的更多,真没必要自己知道的早一些就看不起人家,你如果不愿意指导或者看不惯,大可以不讲和不理会,也不至于这个那个开喷的,至于淘汰不淘汰啥的,市场也会给出答案,也不是你一言以蔽之的
    julyclyde
        28
    julyclyde  
       54 天前
    @imboring
    2 没人关心你是不是生下来就知道所有东西。大家只关心你现在是否知道该知道的东西
    3 作者也有没搞懂的东西并不重要,关键是他还没遇到不懂的问题阻碍到工作就没问题
    456 把现实问题归咎于屁股问题
    C4D4zRNpq9vFSlJW
        29
    C4D4zRNpq9vFSlJW  
       54 天前
    @julyclyde 阅 谢谢你 七月的夏天
    yifan1719
        30
    yifan1719  
       54 天前
    @povsister 谁也没规定擦桌子一定得用抹布,有可能他有自动擦桌子机器人,那为什么还要手动用抹布擦
    drydiy
        31
    drydiy  
       54 天前 via iPhone
    为什么不用 corepack 加 packageManager 管理?
    horizon
        32
    horizon  
       53 天前
    搞不懂没关系,去搜索一下就行了
    啥都不做直接开问,我觉得不妥
    askybig
        33
    askybig  
       53 天前
    disgusting
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1057 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 23:32 · PVG 07:32 · LAX 16:32 · JFK 19:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.