V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
stormer
V2EX  ›  问与答

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

  •  
  •   stormer · 2022-04-21 09:30:54 +08:00 · 4619 次点击
    这是一个创建于 972 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

    啥 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 条回复    2023-05-26 18:47:03 +08:00
    Grapevine
        1
    Grapevine  
       2022-04-21 09:37:18 +08:00
    传下去,可用性和稳定性很差
    charlo
        2
    charlo  
       2022-04-21 09:38:13 +08:00
    传下去,可用和稳定
    dengshen
        3
    dengshen  
       2022-04-21 09:38:30 +08:00 via iPhone
    有依赖锁吗?
    stormer
        4
    stormer  
    OP
       2022-04-21 09:43:30 +08:00
    @dengshen 这是 git 目录结构
    https://imgur.com/bcnSvln
    Rrrrrr
        5
    Rrrrrr  
       2022-04-21 09:52:34 +08:00
    vue 的版本现在拉下来也是报错的
    Rrrrrr
        6
    Rrrrrr  
       2022-04-21 09:52:42 +08:00
    antd pro
    c1273082756
        7
    c1273082756  
       2022-04-21 09:54:36 +08:00
    看看 node 和 npm 版本和之前的对得上不
    erlking
        8
    erlking  
       2022-04-21 09:57:33 +08:00   ❤️ 1
    没 lock file 翻车很正常,翻翻用到的库 3 个月前的 release 版本号写死到 package.json 再试试
    lemontv
        9
    lemontv  
       2022-04-21 10:02:20 +08:00
    下次记得把 lock file 加入版本控制中
    IanHo
        10
    IanHo  
       2022-04-21 10:06:28 +08:00
    1.开代理 2.删掉 package-lock.json 和 node_modules 再安装
    wu67
        11
    wu67  
       2022-04-21 10:23:32 +08:00
    前端依赖本就很乱, 不然就不会衍生出 ***-lock.json 这种玩意了.
    反正我目前的处理方法就是:
    1. *-lock.json 不追踪, package.json 里面不熟悉的依赖^全部改成~或者直接去掉.
    2. *-lock.json 追踪, 依赖死也不升级, 直到项目寿终正寝或者一次部署之后就再也不管了.
    leeemon
        12
    leeemon  
       2022-04-21 10:26:16 +08:00
    是 node 版本问题吗,试试换一下 node 版本 16 或者 14 试一下
    AA5DE3F034ACCB9E
        13
    AA5DE3F034ACCB9E  
       2022-04-21 10:31:16 +08:00
    后端菜鸟用个 fetch 都踩了几天的坑,思维转换慢了
    IceBay
        14
    IceBay  
       2022-04-21 10:33:52 +08:00
    @wu67 这帽子也太大了,其他语言和包管理器大多都有 lock
    viewrules
        15
    viewrules  
       2022-04-21 10:35:18 +08:00
    lock 肯定是要有的,不然很麻烦,然后也推荐用 volta ,如果实在不习惯,小项目用 html 也是可以的
    seakingii
        16
    seakingii  
       2022-04-21 11:33:47 +08:00
    哎,前途项目太复杂了,目前超过后端的复杂性了.. 哈哈
    Vegetable
        17
    Vegetable  
       2022-04-21 11:44:06 +08:00
    没 lock ?我不理解,这也能怪别人?前端是乱,还有 lock 解决不了的 node 版本问题,但是你这个看起来是自己的问题。
    gouflv
        18
    gouflv  
       2022-04-21 12:25:45 +08:00 via iPhone
    npm 的包管理能劝退一大波入门后端
    DOLLOR
        19
    DOLLOR  
       2022-04-21 13:24:21 +08:00 via Android
    这就是我把 node_modules.7z 一起提交到 git 的原因。
    statumer
        20
    statumer  
       2022-04-21 13:45:02 +08:00 via iPhone
    乱黑什么 npm 的依赖管理呢?有 lock 文件,喜欢操作一下排除出版本控制系统,赖 npm 太垃圾还行。
    lovedoing
        21
    lovedoing  
       2022-04-21 13:55:09 +08:00
    node 的包管理工具很难用不是常识吗
    dcsuibian
        22
    dcsuibian  
       2022-04-21 14:38:49 +08:00   ❤️ 2
    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
        23
    duan602728596  
       2022-04-21 17:56:46 +08:00
    我一个做了三年的项目都没有启动不起来过
    mikulch
        24
    mikulch  
       2022-04-22 08:31:11 +08:00 via iPhone
    @dcsuibian 这个 lock 文件干嘛的?
    Bijiabo
        25
    Bijiabo  
       2022-04-22 09:38:00 +08:00
    感觉还好,平时使用的时候注意就好啦。

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

    还有就是远离国内大公司的开源产品...
    sjhhjx0122
        26
    sjhhjx0122  
       2022-04-22 10:30:13 +08:00
    你没加 lock 。。不过加了 lock 也远离 umi 好吗
    dcsuibian
        27
    dcsuibian  
       2022-04-22 23:10:30 +08:00
    @mikulch 就是完全精准锁死用的版本。
    whevether
        28
    whevether  
       2022-11-19 20:45:05 +08:00
    谁叫你用辣鸡 umi. umi 是在第三方依赖上再包了层。 出个问题你根本找不到问题
    peterlxb
        29
    peterlxb  
       2023-05-26 18:47:03 +08:00
    升级文档写的也很难懂,几乎很难成功
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1060 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 22:52 · PVG 06:52 · LAX 14:52 · JFK 17:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.