按照正常的逻辑,这些数据需要我每访问一次就从数据中查询一次,如果直接将查询过程变为一次性的(每次启动服务的时候才会重新去sql查询),那么就可以解决问题,但这怎么看,也不像解决了问题,很多数据是需要立即获取的,比如说很多实时更新的信息,这时候你想要通过重启服务才能查看最新信息,很显然是不现实的。 一时间,陷入僵局。。。 因为这个问题,我翻阅了其他人上百篇的博客,发现此类的极少,因为他们做演示的时候大多都是在一个 app.js文件下执行的,根本没有分离的过程,也没有这样的问题。 但功夫不负有心人,通过国外的几篇问题贴,我强忍着翻译后生硬的话语,去看出了其中的玄机。 直接获取不到的结果,可以通过回调函数来返回。 改造。。。。 改造后的代码如下
[NodeJs]拿不到mysql查询返回的数据?你可能还没试过这招
nodejs
分离mysql
模块后,能在模块内console.log
出数据,主模块却拿不到的问题导读
缘由
nodejs
的时候,就想要把nodejs
和mysql
链接起来;于是便在网络上简单学习了nodejs
链接mysql的教程,但当时所有代码都挤在一个 app.js
里面,但当我去将mysql
的模块专门从app.js
中抽离的时候,问题发生了。(今天拿一个简单的小项目来举例)
console.log
出数据,但是app.js
是接收不到的(通过console.log
逐步查找出来的原因),因此我们去访问这个接口,也拿不到任何数据
result
还没有被查询到并赋值,函数就已经给我返回了result
getdata()
函数,然后将返回值发送
result
还没有被查询到,log也被略过,直接先执行了return
,然后就返回了一个未被定义的空值
undefined
,而查询结果却在后面;显然,这是执行顺序的锅。
解决方案
6. 在写法上的确和之前有了变动,这次我们再次打开浏览器,数据跃然屏上后话
创作不易 欢迎
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算