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

前端哪些场景用 for 循环渲染

  •  
  •   TomVista · 2019-09-04 15:50:04 +08:00 · 1437 次点击
    这是一个创建于 1901 天前的主题,其中的信息可能已经有所发展或是发生改变。
    11 条回复    2019-09-06 15:16:48 +08:00
    Sapp
        1
    Sapp  
       2019-09-04 16:09:48 +08:00
    其实绝大多数场景你都可以不用 for,一般情况下用 for 就是为了满足某个条件直接 break ,但是对于绝大多数前端(非搞大数据的)你接触到的数据量来说,break 不 break 根本没啥影响,反倒是不少人用 for 循环还一不小心搞出 bug... 直接根据对应场景用 forEach、map 代替没一点问题。
    TomVista
        2
    TomVista  
    OP
       2019-09-04 16:13:43 +08:00
    @Sapp 静态数据,比如菜单,tab,固定数据的列表,是不是 使用复用组件一条条写出来比 js 循环渲染 好一点,,,
    Sapp
        3
    Sapp  
       2019-09-04 16:16:47 +08:00   ❤️ 1
    @TomVista 你没有几百上千条数据的量,根本不用担心性能问题
    rabbbit
        4
    rabbbit  
       2019-09-04 16:24:46 +08:00   ❤️ 1
    会触发重排 /重绘的话一般会避免使用循环.使用 innerHTML 或者是虚拟 Dom 作为代替.
    当然,数据量少的话无所谓.
    toma77
        5
    toma77  
       2019-09-04 16:25:33 +08:00   ❤️ 1
    一般这种用 for 循环的场景我都在服务端模板渲染了
    Exia
        6
    Exia  
       2019-09-04 19:37:29 +08:00
    列表数据不就是用 for 循环吗
    HarryQu
        7
    HarryQu  
       2019-09-04 20:12:37 +08:00   ❤️ 1
    列表数据,数据量大会分页请求。

    我是后端,基本列表数据,没有特殊业务,我会要求他们分页请求。
    TomVista
        8
    TomVista  
    OP
       2019-09-05 08:46:42 +08:00 via iPhone
    @Exia 我最近接手了 2 个项目,里面的设置,菜单 什么的,都是用 for 循环数组或对象写出来的。。
    Exia
        9
    Exia  
       2019-09-05 15:32:37 +08:00   ❤️ 1
    @TomVista 估计是菜单比较多?
    TomVista
        10
    TomVista  
    OP
       2019-09-05 16:02:32 +08:00
    @Exia 都不多,有的甚至就 2 个的也要 for 一下,
    Exia
        11
    Exia  
       2019-09-06 15:16:48 +08:00   ❤️ 1
    @TomVista 嗯...如果全部都是数据驱动,也许也可以这样,以后改变那些数据的时候就可以了,而不用自己去改 html 了,猜测大概是这样吧
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2628 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 10:28 · PVG 18:28 · LAX 02:28 · JFK 05:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.