V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
laters
V2EX  ›  Flutter

flutter 中如何优雅的二次封装小部件

  •  
  •   laters · Sep 28, 2023 · 1517 views
    This topic created in 946 days ago, the information mentioned may be changed or developed.

    想二次封装一些 input button appbar switch 但每个小部件都有很多属性,如何能避免一个一个写属性的方法,又能做到修改某些属性的默认值

    7 replies    2023-10-11 10:57:33 +08:00
    AoEiuV020JP
        1
    AoEiuV020JP  
       Sep 28, 2023
    没办法吧,要支持几个属性就得自己定义几个属性然后传过来再传进去,
    AoEiuV020JP
        2
    AoEiuV020JP  
       Sep 28, 2023
    @AoEiuV020JP #1 感觉主要还是 flutter 没有反射,有些操作是理论上就办不到的,
    laters
        3
    laters  
    OP
       Sep 29, 2023
    @AoEiuV020JP 如果全部支持呢 就只能一个一个定义,然后再传 ? 这样就怕版本更新了什么属性, 然后二次封装组件就不知道
    begeneral
        4
    begeneral  
       Oct 5, 2023
    试试 xxx.copyWith
    laters
        5
    laters  
    OP
       Oct 8, 2023
    @begeneral 组件好像不能 copyWidth 吧
    begeneral
        6
    begeneral  
       Oct 9, 2023
    @laters 用扩展类,dart 的 extension 用法了解下
    jmliang
        7
    jmliang  
       Oct 11, 2023
    没办法,目前是自己封装一下常用的 widget
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1289 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 16:59 · PVG 00:59 · LAX 09:59 · JFK 12:59
    ♥ Do have faith in what you're doing.