请问一下这个回调函数的参数是不是写错了?

一本书上的实例代码,这个redis是封装了redis接口的类,get就是redis的get。
问题是第8行的redis.get(mailKey).then的回调函数参数怎么会赋值等于空数组呢?这样get不就没意义了吗?

    redis.get(userKey1).then((mail) => {//保证两个用户之间只可能出现一次对话
        if (!mail) mail = []
        let has = false
        for (let i = 0; i < mail.length; i++) {
            if (mail[i].users.indexOf(req.params.username) > -1) {
                has = true    //对话已经存在,直接写
                mailKey = mailKey + mail[i].m_id
                redis.get(mailKey).then((mailData = []) => {//问题在这里  
                    mailData.push({text: req.body.text, time: Date.now(), read: []})
                    redis.set(mailKey, mailData)
                    res.json(util.getReturnData(0, '发送私信成功'))
                    next()
                        })
                    }
                }

阅读 1.6k
1 个回答
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题