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

[前端]关于使用 Vue 的一个小问题

  •  
  •   dixeran · 2018-04-09 18:55:36 +08:00 · 1967 次点击
    这是一个创建于 2418 天前的主题,其中的信息可能已经有所发展或是发生改变。
    例如有一个很多条目的列表,每个列表都可以选择是否展开详情,使用“ Vue ”的方法是不是意味着要对每个列表项的数据里增加一个类似于 "showdDetail : false/true" 这样的属性?
    可是"showDetail"这种属性本身就很“视图层”,按理说不应该跟数据混在一起吧。对于这样的情况怎样设计比较合理呢?
    9 条回复    2018-04-10 12:25:14 +08:00
    zjwshisb
        1
    zjwshisb  
       2018-04-09 19:07:55 +08:00
    本来就是数据驱动视图呀。。很视图层有什么问题吗?
    dixeran
        2
    dixeran  
    OP
       2018-04-09 19:33:25 +08:00 via Android
    @zjwshisb 那样跟后端交换数据的时候就很不方便诶。
    zjwshisb
        3
    zjwshisb  
       2018-04-09 19:42:54 +08:00
    @dixeran 提交的时候过滤一下就好了
    crysislinux
        4
    crysislinux  
       2018-04-09 19:44:46 +08:00
    你也可以搞个 showDetails: { [id]: boolean }, 这样就跟你的数据分开了
    johnniang
        5
    johnniang  
       2018-04-09 19:45:13 +08:00 via Android
    @zjwshisb 循环的每一个数据都添加一个属性就搞定了
    viko16
        6
    viko16  
       2018-04-09 20:02:59 +08:00 via Android
    客户端要有意识地维护一个数据模型。
    服务端数据只是其中一个数据源…
    dixeran
        7
    dixeran  
    OP
       2018-04-09 20:15:48 +08:00
    @zjwshisb
    @crysislinux
    @johnniang
    @viko16
    受教了,谢谢
    grewer
        8
    grewer  
       2018-04-09 21:30:14 +08:00
    新建一个组件,添加参数 showdDetail : false/true ,父组件导入后台传递的数据即可
    dixeran
        9
    dixeran  
    OP
       2018-04-10 12:25:14 +08:00 via Android
    @grewer 这个不错,谢谢:)
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5586 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 06:35 · PVG 14:35 · LAX 22:35 · JFK 01:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.