Quantcast
Channel: CNode:Node.js专业中文社区
Viewing all articles
Browse latest Browse all 14821

mean项目的疑问,应该是架构问题或者代码的理解问题。新手求问。

$
0
0

首先多谢能进来看看。主要是自己写代码时候遇到的问题。 最近开了一本源于mean框架下搭建服务的书。自己写了一个关于这个框架。书上介绍的很简单。基本上就是路由直接连接mongo就结束了。一点关于controller,service,dao层的描述都没有。自己凭着当初学java时候的印象补上了这些东西,然后果然出问题了。括弧笑。 首先来看看结构 图片.png package.json文件 图片.png如图所示啊。 bin什么都没有。router,controller,service,dao不用多说了,views是html文件的家,(我没使用模板引擎,打算前端页面控制直接使用angular),public是客户端的js,css,image文件的地方。 结构知道了。 基本的后台流程我思考的是: (一系列前台的操作,暂无问题,暂不赘述)》》》app.js》》》router》》》controller》》》service》》》dao》》》response.json返还json值。交给前端的angular去渲染页面。 那现在就是有问题了。 只要是中间件的问题。我在别人的博客上看见了关于monk的使用法。导入了monk(package.json可见); 导入使用都没有问题但是使用时候我发现了一个问题 图片.png如上图所示代码。我在dao层写的都是构造函数。当service层要使用这个dao层代码时候是先做个实例。然后用实例的方法来共同数据库来取得数据。 service层部分代码如下图 图片.png我本来是想的直接使用return 回去dao层查到的数据。但是发现返回的数据是undefined;原因是 图片.png上图所示的红框部分的代码是异步的。神tm异步的。reObj没有等到赋值。直接返回了。神tm直接返回了。然后我就想到中间件的使用法。或者是阻塞的使用法。最后的结果是我神TM不会。。。。。。咋办呢? 我想到的办法是使用参数。 从控制层开始把流程参数写进去。。。如下代码所示。 router代码 图片.png controller代码 图片.png service代码 图片.png dao代码 图片.png这样就可以执行了。可是,可是,可是; 这个只适用一个表的查询。要是查两个表怎么破? 艹艹艹。 最后还是想不到办法。 早听说咱这神人辈出,高手如云。希望能有朋友帮我这个忙。帮我指点下。是不是当初我想的思路就是错误的。还是我学的时候漏了什么部分。 多谢指点。


Viewing all articles
Browse latest Browse all 14821

Trending Articles