定义对象的时候如果这样定义,
这样说明在内存中是不是存储了2份数据,希望初始化page给的域个调用域为同一个,
1楼的想法太简单了,page函数传递类的实例而不是一个简单的{},这样做的目的是可以将代码抽象,比如列表页面同一使用一个listbase类的实例就可以了,
,这是我更改方案最后实现的效果,简单的传递几个参数就可以配置下拉刷新,加载更多,和参数;官方的这个做法两份数据是有些浪费内存,还不好控制。
楼上厉害了,鼓掌
干嘛整这么复杂?
这样就行了,调用域this就是Page的实例:
Page({
data:{a:1,b:2},
onLoad: function(params){
params && this.refresh(params)
},
refresh: function(params){
let {a,b} = this.data
a += params.a||0
b += params.b||0
this.setData({a, b})
}
})