UnlearnableWord icon indicating copy to clipboard operation
UnlearnableWord copied to clipboard

报了3个错误,运行不起来

Open e-bei opened this issue 2 years ago • 54 comments

数据库已创建、 云函数已上传、 环境id已更改

错误图示: image

e-bei avatar Nov 25 '22 12:11 e-bei

你好,麻烦你尝试降一下基础库版本到 2.20 试试

Mint-green avatar Nov 25 '22 13:11 Mint-green

你好,麻烦你尝试降一下基础库版本到 2.20 试试

Mint-green avatar Nov 25 '22 13:11 Mint-green

本地调试userRouter接口报错

{ "username": "百倍", "avatar_pic": "https://thirdwx.qlogo.cn/mmopen/vi_32/BjtFxicUrfHe…tibNgUkic0ZKjjLN0o7DJMGsWicRFhJHgTrSNlYW4qibA/132", "$url": "wxLogin" }

image

e-bei avatar Nov 25 '22 13:11 e-bei

登录正常了,是因为我手动添加了一个用户导致

e-bei avatar Nov 25 '22 13:11 e-bei

又有一个新问题,单词本是空的,我要怎么添加呢?

image

e-bei avatar Nov 25 '22 13:11 e-bei

这个的话,弹窗其实是选择词书用的,但这里可能没取到词书列表导致是空的,你那边有导入word_book的数据嘛

Mint-green avatar Nov 25 '22 13:11 Mint-green

我在你提供的另一份数据库文件里没有找到word_book相关的表结构。可以提供一份有初始化数据的脚本给我吗? image

e-bei avatar Nov 25 '22 13:11 e-bei

这里也没找到各表的结构或初始化数据 image

e-bei avatar Nov 25 '22 13:11 e-bei

[email protected]

e-bei avatar Nov 25 '22 13:11 e-bei

字段问题,因为设计的字段比较多库也比较多,当时就没有弄(捂脸),目前在备考,没时间整理,抱歉 数据那个我检查一下,之前应该已经加入了233

Mint-green avatar Nov 25 '22 13:11 Mint-green

哎呀,work_book_record.json 那个就是词书的库数据(word_book),当时可能整合的时候那估计搞忘了没改名...

Mint-green avatar Nov 25 '22 13:11 Mint-green

哈哈,原来如此!我改下表名试下,非常感谢

e-bei avatar Nov 25 '22 13:11 e-bei

选择书本后,进入学习单词页面报错,明天再继续摸索一下 image

e-bei avatar Nov 25 '22 14:11 e-bei

哈哈哈,没事没事,感谢又帮我发现了个小问题~

Mint-green avatar Nov 25 '22 14:11 Mint-green

啊这,好的,明天你再看看network那里有没有发出请求,有的话可以看看云开发的日志那里有没有打印什么过程信息,结合着看看是哪里会出问题

Mint-green avatar Nov 25 '22 14:11 Mint-green

wordDetail中没有找到translation字段,导致强制转换json对象报错,我怀疑是不是我的数据库不是最新的原因。 image

e-bei avatar Nov 26 '22 11:11 e-bei

我上传的就是最新的词库鸭,这几个是基础数据库,我生成导入后就没有改的,你可以去云开发那里看看数据库的记录有没有这个字段

Mint-green avatar Nov 26 '22 12:11 Mint-green

也有可能是上面toTransList处理返回的对象有误,你看看在整合handleWordDetail顶部和那一行加一个打印,看看在处理哪一个词,处理前后信息有什么变化

Mint-green avatar Nov 26 '22 12:11 Mint-green

通过await wordApi.getLearningData,查询learning_record表中的数据 image

返回的结果 1669468008994

对返回的结果进行处理,但上一步返回的数据中,并不包含tagList、translation、definition、exchange这些字段 image

e-bei avatar Nov 26 '22 13:11 e-bei

那数据库那边有这些字段嘛

Mint-green avatar Nov 26 '22 13:11 Mint-green

没搞懂getLearningData是怎么组合到的数据, 我看了下数据库,以下的表只创建了表,但没有数据,我在分支源码和你提供的百度云数据库文件里也没找到数据结构。 daily_sum、learning_record、learning_record_temp、work、work_all

e-bei avatar Nov 26 '22 13:11 e-bei

translation字段,我在big_dict里有找到,但上面的代码好像没有找到有读取这张表的地方。

image

e-bei avatar Nov 26 '22 13:11 e-bei

ooops,大词库是 word_all ,也就是 big_dict 导入到 word_all 里,小词库是 word,即 small_dict 的内容导入到 word里,我的我的,这就去改说明文件...

Mint-green avatar Nov 26 '22 13:11 Mint-green

怪我,是在下眼拙。

按你的提示改了表名,终于跑起来了。

e-bei avatar Nov 26 '22 13:11 e-bei

image

Mint-green avatar Nov 26 '22 14:11 Mint-green

问题不大,还好不是什么大问题,也怪我没有做好这些小细节啦

Mint-green avatar Nov 26 '22 14:11 Mint-green

感谢感谢,这对我的帮助很大。

e-bei avatar Nov 26 '22 14:11 e-bei

请问Cannot read property 'length' of undefined这个错误是怎么解决的? image

fgh2894 avatar Feb 22 '23 13:02 fgh2894

这个其实是我的锅,我在服务端返回做了统一的错误返回,但是没有在小程序端做错误处理,就全都按照正常请求的逻辑处理请求结果了,这里的话可以往上看两行,上面是一个请求返回DB error,就可能是云函数那里数据库查询出错了,返回小程序端按照正常情况期待返回的是数组,故会用.length属性,但实际上这个地方data取不到,因此自然就data就是undefined,再data.length就会报错。 处理的话你可以看看云开发那里云函数的执行日志,这应该是首页,有个getBasicLeaningData或getDailySentence,都在wordRouter这个云函数里,如果有日志的话,可以去cloudFunction文件夹的wordRouter/index.js,在对应的处理逻辑内部在一些处理步骤后加一下console.log,看看是哪里出错了,同时也可以检查下查询语句有无问题(之前是没问题的,但不排除这段时间更新了)。 另外,目前我这边没有开这个服务资源包,所以也不知道具体哪里出了问题,最近有另一位朋友的也出了类似的执行出错问题,我打算自己测试调整一下,但是得隔几天。

Mint-green avatar Feb 23 '23 07:02 Mint-green

还有一个小bug我还没想到办法解决,首页点击一直显示数据加载中。 image

fgh2894 avatar Feb 23 '23 07:02 fgh2894