javascript 作用域问题

function(req,res,next) {

  if(!res.locals.menus) {

    var menus={};

    page_proxy.getLevel1Page().then(

      function(main_menus) {

        _(main_menus).forEach(function(parent) {

          var pageid=parent.page_id;

          page_proxy.getLevel2PageLink(pageid).then(

            function(sub_menus) {

              menus[pageid]=sub_menus;

            },

            function(err) {

              next(err);

            }

          );

        });

        res.locals.menus=menus;

      },

      function(err) {

        next(err);

      });

  }

  next();

}

不知道这段代码问题出在哪,我的意图是想在查询完数据后动态的为menus动态添加属性,但为什么后获取的menus的值一直为{}(数据库中有数据)。是不是作用域的问题?大神们帮帮给看一下。

智慧大石
浏览 554回答 1
1回答

SMILET

这个动态生成用事件委托,就可以
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript