javascript 作用域问题

查看:82
本文介绍了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的值一直为{}(数据库中有数据)。是不是作用域的问题?大神们帮帮给看一下。

解决方案

这个动态生成用事件委托,就可以

这篇关于javascript 作用域问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆