• 用数据描述所有的内容
  • 数据要结构化,易于程序操作(遍历、查找)
  • 可扩展性

    设想原型图

    截屏2020-10-28 上午10.07.15.png

    数据结构设计

    1. {
    2. productionList: [
    3. {
    4. id: 1,
    5. title: '商品1',
    6. price: 10
    7. },
    8. // ...
    9. ],
    10. cartList: [
    11. {
    12. id: 1,
    13. quantity: 1
    14. },
    15. // ...
    16. ]
    17. }

    我一开始的设计,没有满足可扩展性的需要,例如商品改名,商品打折扣,商品列表需要修改,购物车列表也需要修改

    1. {
    2. goods: [
    3. {
    4. gid: 1,
    5. name: '商品1',
    6. price: '10'
    7. },
    8. // ...
    9. ],
    10. shopping: [// 购物车列表
    11. {
    12. gid: 3,
    13. name: '商品3',
    14. price: '20',
    15. num: 1 // 商品数量
    16. },
    17. // ...
    18. ]
    19. }

    组件设计

  • 从功能上拆分层次

  • 尽量让组件原子化
  • 容器组件(只管数据)& UI组件(只显示视图)

截屏2020-10-28 上午11.47.08.png

  1. <APP>
  2. <ProductionList>
  3. <ProductionListItem />
  4. <ProductionListItem />
  5. <ProductionListItem />
  6. </ProductionList>
  7. <CartList>
  8. <CartItem />
  9. <CartItem />
  10. </CartList>
  11. </APP>

组件结构和我一开始的设计基本一致