歌单查重后,云函数云端测试调用状态显示失败

来源:3-11 歌单数据去重

今天你归零了吗

2020-11-10

云函数云端测试时显示如下:
调用状态
失败, ret code 1
返回结果
{“errorCode”:1,“errorMessage”:“user code exception caught”,“stackTrace”:“TypeError: Cannot read property ‘length’ of undefined\n at Runtime.exports.main [as handler] (/var/user/index.js:26:35)\n at process._tickCallback (internal/process/next_tick.js:68:7)”}

代码部分:
// 云函数入口文件
const cloud = require(‘wx-server-sdk’)

cloud.init()
//云数据库相应的初始化
const db = cloud.database()
const axios = require(‘axios’)
const URL = 'https://apis.imooc.com/personalized?icode=37B746D45184CA07
const playlistCollection = db.collection(‘playlist’)

// 云函数入口函数
exports.main = async (event, context) => {
const {data} = await axios.get(URL)
//读取Playlist集合里面的数据
const list = playlistCollection.get()
if (data.code >= 1000) {
// msg是如果错误取这个参数显示
console.log(data.msg)
return 0
}
const playlist = data.result

// 歌单数据去重
const newData = []
for (let i = 0, len1 = playlist.length; i < len1; i++) {
let flag = true
for (let j = 0,len2 = list.data.length; j < len2; j++) {
if (playlist[i].id===list.data[j].id) {
flag = false
break
}
}
if (flag) {
newData.push(playlist[i])
}
}

// 将数据playlist获得的插入云数据库
if (newData.length>0) {
await playlistCollection.add({
data:[…newData]
}).then((res) => {
console.log(‘插入成功’)
}).catch((err) => {
console.log(err)
console.error(‘插入失败’)
})
}
return newData.length
}

写回答

1回答

谢成

2020-11-10

可以仔细翻译一下错误,有代码是undefined:

//img.mukewang.com/szimg/5faa589f09a0f3d108410358.jpg

//img.mukewang.com/szimg/5faa588909c72c9406490539.jpg


可以再仔细看下这节课程的视频。

0
1
今天你归零了吗
谢谢老师,已解决!
2020-11-10
共1条回复

微信小程序云开发-从0打造云音乐全栈小程序

横跨小程序端、云后端、CMS一站式云开发的小程序全栈课程

1938 学习 · 2768 问题

查看课程