首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Android

想问下 Android 的下拉列表,在修改的时候,后台都是怎么给他传参的?

  •  
  •   w516322644 · 144 天前 · 1127 次点击
    这是一个创建于 144 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我写后台接口的时候,以为跟前端一样,返回 id 就行,$("#select").val(id)就选中了,我们现在的 Android 需要把值也传给他,这样他就省了一步循环。但我要多执行 sql 语句,去找到值。

    所以想问下大家都怎么办的?
    10 回复  |  直到 2019-05-29 23:11:48 +08:00
        1
    behanga   144 天前
    问题还没有描述清楚,你举个栗子
        2
    w516322644   144 天前
    比如[{"id":1,"name":"whw"},{"id":3,"name":"whw"},{"id":5,"name":"whw"}]
        3
    w516322644   144 天前
    @behanga 比如下拉列表数据动态获得[{"id":1,"name":"whw1"},{"id":3,"name":"whw3"},{"id":5,"name":"whw5"}],我后台只返回了,id=3,告诉他选中,现在我们的 Android 让我把 name 也返回回去,但我们 name 需要查,他不想循环,我不想查。
        4
    ily433664   144 天前
    正常来说应该是返回 id,然后还有个字典让前端自己去取 name
        5
    airfling   144 天前
    多查几个字段又不浪费时间,而且还能减轻服务器压力,直接返回给他就是了
        6
    behanga   144 天前
    @w516322644 正常如果是列表性质的,一般 id=1,2,3 的数据都会给端上,然后端上根据这些数据自己做后续处理。如果数据量很大,需要做分页,端上请求的时候根据第几页返回数据。
        7
    w516322644   144 天前
    @behanga

    @airfling
    因为 2 有可能不是他的,他看不到,所以 2 不返回给他。
        8
    firefffffffffly   144 天前
    我理解你返回了 { "data": [{"id":1,"name":"whw1"},{"id":3,"name":"whw3"},{"id":5,"name":"whw5"}], "selectedId": 3}
    首先这就是个数据结构设计问题,和 Android 平台不相关。
    我猜他 UI 层额外创建了个只包含 name 的 List,想用 indexOf 或者 contains 函数直接查询 index,如果只有 id 就得先从 id 查询 name,再查询 index,就多了个 id 查 name 的循环。
        9
    firefffffffffly   144 天前
    有 id 存在的场景不用 id 索引内容而是用展示性质的 name 做索引肯定是最大的坑,所以肯定不能返回 name 让他做查询操作。
        10
    hhecoder   144 天前
    客户端为什么需要 name 呢?没啥特别的原因肯定用 id 咯
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4309 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 27ms · UTC 02:08 · PVG 10:08 · LAX 19:08 · JFK 22:08
    ♥ Do have faith in what you're doing.