westore icon indicating copy to clipboard operation
westore copied to clipboard

有一个疑问,就是当多个页面 每个页面使用到的data属性很多时,会不会很冗杂

Open HZZformGD opened this issue 5 years ago • 7 comments

举个栗子 pageA

Page({
  data: {
     a:1,
     b: 2,
     .....
    z: ''
  }
}) 

但是其实 只有 一两个属性是需要跨页面传输的(例如z),其他的都只是本页面使用,那么 如果这种情况 要采用westore 是不是必须所有属性都写到store (即使采用 分模块来加载,模块里面也都一一对应写好吧)

可能我表述的不是很清楚, 最终想表达的是 就是能不能只有写在store的属性时 才会被覆盖,其他的当前页面没有的,就不用覆盖。

HZZformGD avatar Oct 22 '18 04:10 HZZformGD

不想覆盖的写成纯组件。不是纯组件确实会覆盖。 create({pure:true})

dntzhang avatar Oct 22 '18 09:10 dntzhang

@dntzhang 好的,感谢回答~ 那就是说 如果想这样实现 就必须把每个页面 用纯组件 component 来写。 不过总感觉不太对吧, 其实 就相当于vue 在使用vuex时, 把所有的data 都 用vuex 来管理 , 但是其实大部分都不需要。

HZZformGD avatar Oct 23 '18 06:10 HZZformGD

统一管理没啥不好。但是受框架限制,westore确实不能像omi那样既可以中心化,又可以去中心化。去中心化就不用westore

dntzhang avatar Oct 23 '18 06:10 dntzhang

或者纯组件

dntzhang avatar Oct 23 '18 06:10 dntzhang

额,差点忘了。你组件或者page声明了data就不会产生多余data

dntzhang avatar Oct 23 '18 06:10 dntzhang

是按照最短路径盖上去

dntzhang avatar Oct 23 '18 06:10 dntzhang

统一管理没啥不好。但是受框架限制,westore确实不能像omi那样既可以中心化,又可以去中心化。去中心化就不用westore

统一管理是没问题,但是data要写两遍就不是很好了,虽然page里可以不写data,每次都刷新全部数据,但是综合来说,我还是更偏向于局部刷新,但是对data写两遍,有点接受不了!

hunshikan avatar Oct 24 '18 06:10 hunshikan