使用promise修改classicModel的问题

来源:11-8 Promise的正确用法

Beckybei

2019-07-05

老师,我用promise修改classicModel,发现返回的data不仅仅提供classic页面使用,还要在classicModel页面供缓存使用,于是我想了两个办法

第一种办法:

getLast(){
  return this.getData({
    url: "/classic/latest"
  })
  this.processLastData() ;//  加在这里无法实现,return后面都不触发了。
                           //processLastData()这个方法应该在哪里触发呢,我想不到地方了。
}

processLastData() {
  this.getLast().then((data) => {
    this._setLastIndex(data.index);
    let lastDailyName = this._getDailyName(data.index);
    wx.setStorageSync(lastDailyName, data)
  })
}

第二种办法 :返回自己

 getLast() {
    const getData=this.getData({
      url: "/classic/latest"
    })
    return getData
    .then(data => {
        this._setLastIndex(data.index);
        let lastDailyName = this._getDailyName(data.index);
        wx.setStorageSync(lastDailyName, data);
        return getData
      }
    )
  }

感觉这两种办法都不是最好,有啥好办法既可以使用promise,又可以让data在classicModel中使用呢?
望老师赐教,谢谢。

写回答

1回答

7七月

2019-07-05

再单独给ClassicModel做个API不就行了

0
3
Beckybei
回复
7七月
就是如果我用第二种办法,感觉自己调用自己不大好。有啥办法可以改进吗?
2019-07-07
共3条回复

纯正商业级微信小程序应用实战,全方位小程序特性讲解

真实数据的高质量小程序项目,学会直接工作

4782 学习 · 2125 问题

查看课程