获取分类,然后储存在 `storage` ,取不出来的问题?

async getCategories() {
    // 从缓存中获取分类数据
    let categories = wepy.getStorageSync('categories')

    if (!categories) {
        try {
          let categoriesResponse = await api.request('categories')

          // 请求成功将数据添加至缓存
          if (categoriesResponse.statusCode === 200) {
                categories = categoriesResponse.data.data
                wepy.setStorageSync('categories', categories)
          }
        } catch (err) {
            wepy.showModal({
                title: '提示',
                content: '服务器错误,请联系管理员'
            })
        }

        this.categories = categories
        this.$apply()
      }
    }

第一次进入页面,获取了 categories 后,存储到 storage,然后再次刷新页面的时候,this.categories = categories好像没起作用。
file
就只有这个默认的话题分类。
然后我在 let categories = wepy.getStorageSync('categories')后面,console.log 的时候,本地 storage是有数据的。

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
讨论数量: 1

sorry,找到原因了,把

this.categories = categories
this.$apply()

写在 if里边了 :pensive:

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!