V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
kongkongye
V2EX  ›  前端开发

手机与 pc 做成响应式还是做两套?

  •  
  •   kongkongye ·
    kongkongye · 2023-03-07 09:12:27 +08:00 · 2492 次点击
    这是一个创建于 630 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比如 flutter ,可以编译为移动端原生应用与 pc 端原生应用,但 ui 上通常是两套不同的界面,所以比较纠结是一套代码做成响应式还是做两套代码。
    再比如 pad 这个中等大小的屏幕,究竟应该用移动端的 ui 还是 pc 端的?

    21 条回复    2023-03-09 09:26:31 +08:00
    kuxuan
        1
    kuxuan  
       2023-03-07 09:22:12 +08:00
    取决于你移动端和 PC 端的区别大小,如果比较小,用 1 套省时少力。
    tool2d
        2
    tool2d  
       2023-03-07 09:30:55 +08:00
    PC 如果是后台数据管理,一般来说都是需要独立开发的,界面复杂度和手机区别还是比较大的。

    如果仅仅是普通小 APP 的,做成响应式也可以。

    我写代码原则,核心逻辑绝不写两套,界面看需求而定。
    paopjian
        3
    paopjian  
       2023-03-07 09:39:03 +08:00
    信息量展现不同,PC 套移动的设计理念的话 UI 会显得很臃肿,最好还是分别设计.
    不过内容不多就直接移动端拉伸得了,省事
    kongkongye
        4
    kongkongye  
    OP
       2023-03-07 09:40:44 +08:00 via iPhone
    @tool2d 除去后端的接口,前端核心逻辑好像都是界面强相关的,一些通用方法可能抽取到单独的包里
    kongkongye
        5
    kongkongye  
    OP
       2023-03-07 09:43:18 +08:00 via iPhone
    @paopjian 如果是团队,不同端由不同人开发倒没什么,但如果都是一个人开发,两套通常意味着加一个东西要加两遍,就很烦
    tool2d
        6
    tool2d  
       2023-03-07 09:47:18 +08:00
    @kongkongye 以前我也逻辑和界面强相关,现在我写界面,都用抽象层自定义的 DSL 了。再通过中间层,转成前端可以识别的 jsx 。

    早期发过一篇相关的帖子。t/881306

    后来纠结了很久,最终决定把 UI 层给完全抽象出来了。
    tutou
        7
    tutou  
       2023-03-07 10:07:26 +08:00
    @tool2d 大佬,能细说下怎么把 ui 层完全抽象出来吗
    nekoneko
        8
    nekoneko  
       2023-03-07 10:11:53 +08:00
    核心写一套, 其他的手机和 PC 分开写
    zeyandd
        9
    zeyandd  
       2023-03-07 10:12:10 +08:00
    界面不复杂的话 bootstrap 一把梭
    tyrone2333
        10
    tyrone2333  
       2023-03-07 10:16:06 +08:00   ❤️ 1
    做 2 套, 响应式改样式会疯的
    mozhizhu
        11
    mozhizhu  
       2023-03-07 10:19:29 +08:00
    手机的 100vh 和 PC 的 100vh 不一致以后,事情就复杂了;建议分开写; Pad 可以考虑用手机版响应式扩充。
    kongkongye
        12
    kongkongye  
    OP
       2023-03-07 10:30:31 +08:00 via iPhone
    @tyrone2333 我也觉得响应式掺杂在一起会调疯的😅代码没有可读性了
    polo3584
        13
    polo3584  
       2023-03-07 10:31:39 +08:00
    简单的应用可以一套,精细点就把 UI 层做两套,键鼠和触屏的操作逻辑会导致 UI 的细节不一样。
    deesan
        14
    deesan  
       2023-03-07 10:32:52 +08:00
    面向国外用户就做响应式,面向国内用户就做两套,pad 按 pc 来缩放
    centralpark
        15
    centralpark  
       2023-03-07 10:35:12 +08:00
    面向用户的界面用响应式做一套,后台只做 PC 端
    pianjiao
        16
    pianjiao  
       2023-03-07 10:38:33 +08:00
    一套 两套的工作量 其实差不多。 反而维护上 两套独立 更好维护一点
    tool2d
        17
    tool2d  
       2023-03-07 10:42:53 +08:00
    @tutou "能细说下怎么把 ui 层完全抽象出来吗"

    类似面向低代码编程,把所有组件和响应都做成 json 配置文件格式。

    只要不直接去操作 DOM 就可以,把 UI 当成一个封装好的暗箱。
    zictos
        18
    zictos  
       2023-03-07 10:50:00 +08:00
    简单的博客和商城可以响应式,太复杂的商城还是分开比较好。一般小网站都可以响应式。
    有时候响应式一套代码也搞得挺复杂的,很容易晕,分开写说不定还简单点
    sanqian
        19
    sanqian  
       2023-03-07 11:15:48 +08:00
    两套 到时候你 A 要适配 B C 要适配 A 你不得麻烦死何必呢
    tutou
        20
    tutou  
       2023-03-08 15:03:32 +08:00
    @tool2d 觉得你这个 idea 有搞头,有没有想法开源
    caiqichang
        21
    caiqichang  
       2023-03-09 09:26:31 +08:00
    两套省事
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1648 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 16:54 · PVG 00:54 · LAX 08:54 · JFK 11:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.