收藏
回答

关于page调用域的问题求解

问题模块
API和组件


定义对象的时候如果这样定义,


这样说明在内存中是不是存储了2份数据,希望初始化page给的域个调用域为同一个,

最后一次编辑于  2017-03-03  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

3 个回答

  • aker
    aker
    2017-04-19

    1楼的想法太简单了,page函数传递类的实例而不是一个简单的{},这样做的目的是可以将代码抽象,比如列表页面同一使用一个listbase类的实例就可以了,


    ,这是我更改方案最后实现的效果,简单的传递几个参数就可以配置下拉刷新,加载更多,和参数;官方的这个做法两份数据是有些浪费内存,还不好控制。

    2017-04-19
    赞同
    回复
  • Special
    Special
    2017-03-03

    楼上厉害了,鼓掌

    2017-03-03
    赞同
    回复
  • Tïedào
    Tïedào
    2017-03-03

    干嘛整这么复杂?

    这样就行了,调用域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})

    }

    })

    2017-03-03
    赞同
    回复