stormer
V2EX  ›  问与答

3 个月前用 antd 做的前端,今天拉下来 yarn && yarn start 就起不来了,各种报错

  •  
  •   stormer · Apr 21, 2022 · 6086 views
    This topic created in 1669 days ago, the information mentioned may be changed or developed.

    想说...前端能不能少折腾点,在可用性和稳定性方面加强点

    啥 npm install cnpm install yarn 都撸了个遍..问题是解决一个出一个..现在放弃了,准备用 html 再做个前端

    # This file contains the result of Yarn building a package (ant-design-pro@workspace:.)
    # Script name: postinstall
    
    @umijs/utils tried to access @umijs/babel-preset-umi, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound.
    
    Required package: @umijs/babel-preset-umi (via "@umijs\babel-preset-umi\node")
    Required by: @umijs/utils@npm:3.5.0 (via \frontend\.yarn\cache\@umijs-utils-npm-3.5.0-1121e1524d-9330b415ca.zip\node_modules\@umijs\utils\lib\BabelRegister\)
    
    还有
    Class extends value undefined is not a constructor or null
    
    还有
    [email protected] scripts.postinstall run "umi g tmp" error: Error
    
    还有
    
    since Cannot find module '@umijs/utils/compiled/debug'
    
    还有
    Required package: @umijs/babel-preset-umi (via "@umijs/babel-preset-umi/node")
    
    
    29 replies  •  2023-05-26 18:47:03 +08:00
    Grapevine
    Grapevine
    Apr 21, 2022
    1
    传下去,可用性和稳定性很差
    charlo
    charlo
    Apr 21, 2022
    2
    传下去,可用和稳定
    dengshen
    dengshen
    Apr 21, 2022 via iPhone
    3
    有依赖锁吗?
    stormer
    stormer
    OP
    Apr 21, 2022
    4
    @dengshen 这是 git 目录结构
    https://imgur.com/bcnSvln
    Rrrrrr
    Rrrrrr
    Apr 21, 2022
    5
    vue 的版本现在拉下来也是报错的
    Rrrrrr
    Rrrrrr
    Apr 21, 2022
    6
    antd pro
    c1273082756
    c1273082756
    Apr 21, 2022
    7
    看看 node 和 npm 版本和之前的对得上不
    erlking
    erlking
    Apr 21, 2022❤️1
    8
    没 lock file 翻车很正常,翻翻用到的库 3 个月前的 release 版本号写死到 package.json 再试试
    lemontv
    lemontv
    Apr 21, 2022
    9
    下次记得把 lock file 加入版本控制中
    IanHo
    IanHo
    Apr 21, 2022
    10
    1.开代理 2.删掉 package-lock.json 和 node_modules 再安装
    wu67
    wu67
    Apr 21, 2022
    11
    前端依赖本就很乱, 不然就不会衍生出 ***-lock.json 这种玩意了.
    反正我目前的处理方法就是:
    1. *-lock.json 不追踪, package.json 里面不熟悉的依赖^全部改成~或者直接去掉.
    2. *-lock.json 追踪, 依赖死也不升级, 直到项目寿终正寝或者一次部署之后就再也不管了.
    leeemon
    leeemon
    Apr 21, 2022
    12
    是 node 版本问题吗,试试换一下 node 版本 16 或者 14 试一下
    AA5DE3F034ACCB9E
    AA5DE3F034ACCB9E
    Apr 21, 2022
    13
    后端菜鸟用个 fetch 都踩了几天的坑,思维转换慢了
    icebay
    icebay
    Apr 21, 2022
    14
    @wu67 这帽子也太大了,其他语言和包管理器大多都有 lock
    viewrules
    viewrules
    Apr 21, 2022
    15
    lock 肯定是要有的,不然很麻烦,然后也推荐用 volta ,如果实在不习惯,小项目用 html 也是可以的
    seakingii
    seakingii
    Apr 21, 2022
    16
    哎,前途项目太复杂了,目前超过后端的复杂性了.. 哈哈
    Vegetable
    Vegetable
    Apr 21, 2022
    17
    没 lock ?我不理解,这也能怪别人?前端是乱,还有 lock 解决不了的 node 版本问题,但是你这个看起来是自己的问题。
    gouflv
    gouflv
    Apr 21, 2022 via iPhone
    18
    npm 的包管理能劝退一大波入门后端
    AV1
    AV1
    Apr 21, 2022 via Android
    19
    这就是我把 node_modules.7z 一起提交到 git 的原因。
    statumer
    statumer
    Apr 21, 2022 via iPhone
    20
    乱黑什么 npm 的依赖管理呢?有 lock 文件,喜欢操作一下排除出版本控制系统,赖 npm 太垃圾还行。
    JsonNode
    JsonNode
    Apr 21, 2022
    21
    node 的包管理工具很难用不是常识吗
    dcsuibian
    dcsuibian
    Apr 21, 2022❤️2
    22
    package-lock.json 和 yarn.lock 呢?没锁版本确实是自己问题。

    不过 npm 也确实是烂的一批。Java 后端表示简直被 Maven 吊着打。(就包管理而言)
    初学 npm 语义化版本控制的时候觉得很牛逼。结果实际使用的时候毛用没有,不如直接锁死版本号。
    npm 安全事故频发,丢包、删依赖、供应链投毒、桌面建文件宣扬政治。。。
    包名也是先到先得,没有命名空间管理。(这个其实问题不大)
    依赖库直接放在 node_modules 里,不像.m2/repository 那样多项目共享。
    npm 换 yarn ,yarn 换 pnpm 。这中间还有 cnpm/cyarn 这种明明换个源就行的非要整个包出来。现在 Nodejs 也不行了又推 Deno 了。感觉就没有考虑过版本升级的。就算真积重难改要换新,能不能大家坐下来重新认认真真设计下,不要一天到晚换来换去,越来越分裂。(这部分是前端生态圈的问题了)

    平心而论,Java 这边也出现过,Ant 、Maven 、Gradle 的更迭。但实际上学个 Maven 就够了

    我原本觉得,既然 js 早期有各种设计缺陷,在设计新工具的时候应该更加谨慎认真才是,能这么随心所欲也是真的牛逼。
    duan602728596
    duan602728596
    Apr 21, 2022
    23
    我一个做了三年的项目都没有启动不起来过
    mikulch
    mikulch
    Apr 22, 2022 via iPhone
    24
    @dcsuibian 这个 lock 文件干嘛的?
    Bijiabo
    Bijiabo
    Apr 22, 2022
    25
    感觉还好,平时使用的时候注意就好啦。

    yarn 安装依赖的时候记加 `-E`

    还有就是远离国内大公司的开源产品...
    linkopeneyes
    linkopeneyes
    Apr 22, 2022
    26
    你没加 lock 。。不过加了 lock 也远离 umi 好吗
    dcsuibian
    dcsuibian
    Apr 22, 2022
    27
    @mikulch 就是完全精准锁死用的版本。
    whevether
    whevether
    Nov 19, 2022
    28
    谁叫你用辣鸡 umi. umi 是在第三方依赖上再包了层。 出个问题你根本找不到问题
    peterlxb
    peterlxb
    May 26, 2023
    29
    升级文档写的也很难懂,几乎很难成功
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1861 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 74ms · UTC 15:19 · PVG 23:19 · LAX 07:19 · JFK 10:19
    ♥ Do have faith in what you're doing.