越来越不喜欢单页应用了 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
GM
V2EX    前端开发

越来越不喜欢单页应用了

  •  1
     
  •   GM 2020-10-30 15:52:05 +08:00 4630 次点击
    这是一个创建于 1890 天前的主题,其中的信息可能已经有所发展或是发生改变。

    加载慢,

    容易卡,动不动 100% CPU 占用,难优化

    调试麻烦

    编译时间长,比 Java 还 Java

    嗯,还有一个 node_modules 这个磁盘吞噬黑洞

    在考虑滚回去用 JQuery

    第 1 条附言    2020-10-30 16:49:06 +08:00
    补充:
    调试麻烦,我说的不够准确,应该是“在线排查问题麻烦”
    32 条回复    2020-11-02 11:34:59 +08:00
    jiangnan01
        1
    jiangnan01  
       2020-10-30 16:37:20 +08:00
    这,这得是多大的项目啊?
    lvsshuttao
        2
    lvsshuttao  
       2020-10-30 16:40:46 +08:00
    这是没有懒加载之类的吗?直接 all in 一个页面?
    guokeke
        3
    guokeke  
       2020-10-30 16:41:43 +08:00   8
    总感觉。。。是水平的问题。
    blindie
        4
    blindie  
       2020-10-30 16:42:54 +08:00 via Android
    @guokeke 自信点 去掉总感觉
    yaphets666
        5
    yaphets666  
       2020-10-30 16:46:24 +08:00
    代码写的有问题. 我现在手头的项目 300 多个页面.你说的这些问题一个没有.
    GM
        6
    GM  
    OP
       2020-10-30 16:46:58 +08:00
    @guokeke
    阿里云后台,腾讯云后台,他们水平够吗?他们卡也是水平问题?
    SuperMild
        7
    SuperMild  
       2020-10-30 16:47:20 +08:00
    如果是一个人可以做决定的项目,用 jquery 其实就很好。
    Hoshinokozo
        8
    Hoshinokozo  
       2020-10-30 16:48:55 +08:00
    能把 CPU 占用干到 100,除了死循环就是 CPU 密集型的任务了,那你换 Jquery 也无济于事啊,编译时间长的话想办法优化啊,webpack 性能优化在求职的时候也算是加分项吧
    luob
        9
    luob  
       2020-10-30 16:49:39 +08:00   4
    越来越不想开车上班了
    堵车,动不动 0 km/h
    修车保养麻烦
    明明直接就能走过去的路得绕半条街,比 java 还 java
    还要烧油

    在考虑滚回去骑共享单车上班
    coolair
        10
    coolair  
       2020-10-30 16:49:54 +08:00
    jquery 一把梭,比什么 vue 、react 爽多了。可惜,不符合大势啊。
    nnnToTnnn
        11
    nnnToTnnn  
       2020-10-30 16:50:12 +08:00
    1. 加载慢(不是可以分块加载吗? )
    2. 容易卡,动不动 100% CPU 占用,难优化 (单页面不背这个锅,这个基本上是自己代码没有写好)
    3. 调试麻烦 (webpack 的页面调试起来怎么可能麻烦)
    4. 编译时间长,比 Java 还 Java (了解下微前端)
    5. 还有一个 node_modules 这个磁盘吞噬黑洞 (了解下扁平化依赖)
    GM
        12
    GM  
    OP
       2020-10-30 16:50:30 +08:00
    @jiangnan01 不需要很大的项目,只需要十来二十个页面,编译出来的 .js 高达几个 M 是很常见的。
    Actrace
        13
    Actrace  
       2020-10-30 16:50:51 +08:00
    楼主需要的是这种?
    https://github.com/tmplink/tmpUI
    murmur
        14
    murmur  
       2020-10-30 16:53:28 +08:00
    主要是各种加密的东西放的太多了,本来 js 很小,框架几个 m,然后变成 webasm 几十 m
    GM
        15
    GM  
    OP
       2020-10-30 16:54:03 +08:00
    @Hoshinokozo 用用阿里云控制台,100%cpu 占用很常见。

    别说我电脑不行,我 i7 + 16G 内存 + NVMe SSD 。
    guokeke
        16
    guokeke  
       2020-10-30 16:59:28 +08:00
    @GM 那是我们对“卡”对定义不一样吧(狗头

    我不知道阿里云,腾讯云后台到底是不是 “动不动 100% CPU” 占用 (狗头
    还有为什么你觉得难优化呢?上面对两个后台也难优化吗?你是不是这两个云的关系者(认真脸
    node_modules 黑洞,但是那又如何呢?项目不还是照样做。
    JQuery 回去用呗。但是用了 JQuery 就不卡了吗?(狗头
    GM
        17
    GM  
    OP
       2020-10-30 16:59:53 +08:00
    @nnnToTnnn

    1.分块加载:恰好证明单页应用加载太慢,所以才发明了分块加载,并且只是缓解了一下,其实还是慢
    2. 基本上是自己代码没有写好:用用阿里云、腾讯云之类后台,100%CPU 占用很常见。
    3. 调试麻烦,这个我说错了,我想表达的是在线排查问题麻烦
    4. 微前端:同 1
    5. 扁平化依赖:node_modules 依然非常大,一个项目代码 1M,node_modules 几百 M 甚至 1G 很常见。
    yaphets666
        18
    yaphets666  
       2020-10-30 17:10:14 +08:00   4
    @GM 还是学艺不精啊... 异步组件加载不比 jq 时代慢 你要还觉得慢 那你得找浏览器厂商了. 100%cpu 占用 这肯定是你代码问题啊,这不用多解释吧. 调试麻烦?我觉得前后端都差不多,而且前端没有特别复杂的问题,基本不涉及底层和内存. 至于依赖大小,我觉得可以接受.反正部署的比后端快多了.
    Jirajine
        19
    Jirajine  
       2020-10-30 17:33:32 +08:00 via Android
    推荐试试 pnpm,速度非常快,磁盘占用低,用了就回不去。
    或者 yarn2 也不错。
    ghostsf
        20
    ghostsf  
       2020-10-30 18:04:50 +08:00
    还行吧,习以为常,主要是开发会方便很多,多做些优化吧
    wanguorui123
        21
    wanguorui123  
       2020-10-30 18:20:50 +08:00 via iPhone
    慢工出细活
    GM
        22
    GM  
    OP
       2020-10-30 18:35:45 +08:00
    @yaphets666

    关于“学艺不精”,阿里云后台够精了没,腾讯后台够精了没,一样经常狂占 cpu 。

    “关于 100%cpu 占用 这肯定是你代码问题啊,这不用多解释吧”:大型单页后台经常出现段时间 100% CPU 占用,你没碰到可能是你运气好,也可能是是你用过的系统太少,使用大型单页后台导致风扇狂转的情况很常见,并不是单独我一个人碰到,也并不是我代码问题。
    otakustay
        23
    otakustay  
       2020-10-30 20:00:45 +08:00
    所以现在写多页应用就可以不要 node_modules 了吗?
    Cbdy
        24
    Cbdy  
       2020-10-30 20:44:07 +08:00 via Android
    为什么要黑 java
    xiangyuecn
        25
    xiangyuecn  
       2020-10-30 21:05:58 +08:00
    阿里云的页面确实有毛病,包括文档页面。

    并且是一个标签卡了,所有相同域名下的标签全卡!!

    这种能力我相当佩服

    xhr.open("","",true)。。。
    xiangyuecn
        26
    xiangyuecn  
       2020-10-30 21:07:37 +08:00
    xhr.open("","",false) 是 false
    wxsm
        27
    wxsm  
       2020-10-30 21:41:49 +08:00
    > 编译时间长,比 Java 还 Java

    Too young too naive

    我曾经做过一个 j2ee 项目,编译一个页面要 30 分钟以上。改一行,按保存,泡杯茶,上个厕所,回来一看,还没跑起来。
    visonme
        28
    visonme  
       2020-10-30 21:49:24 +08:00
    LZ 只是不喜欢,既然不喜欢就换呗

    我之前也用过 vue,偶尔也用下,不过也不喜欢,所以我现在一直用 jquery,有点落伍,不过我自己用的开心,客户也用的顺心 ,产品还不错,这足够了。 企业应用方向
    Bechbaliq
        29
    Bechbaliq  
       2020-10-30 21:58:44 +08:00
    node_modules 可以走 CDN

    服务器上 Nginx 配置一下 HTTP Cache
    Seanfuck
        30
    Seanfuck  
       2020-10-30 23:20:07 +08:00 via iPhone
    直接 jq 一把梭吧,客户又不看代码的,自己也少掉很多头发。老板要求的话就换个老板[dog]
    mercury233
        31
    mercury233  
       2020-10-30 23:58:20 +08:00
    @Actrace tmp.link 的 web 端体验是我近年用过的最差的网站没有之一,从输入网址到出现内容需要好几秒,然后还有个滚动条加载,明明是一个很简单而且很丑又手感很差的界面……
    chenpingan
        32
    chenpingan  
       2020-11-02 11:34:59 +08:00
    @visonme 一直用 jq 的话下次找工作的时候怎么办,目前 jq 的岗位应该不多吧...
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     860 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 23:24 PVG 07:24 LAX 15:24 JFK 18:24
    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