2016-05-17 133 views
-1

帮帮我,我想把变量值设置成异步方法(数据是从db加载的),问题是将值设置为最后一条记录。这里是我的代码:将变量值赋给异步方法

var _resolve = { 
    lazyLoad: ['$ocLazyLoad', function($ocLazyLoad) { 
     return $ocLazyLoad.load(angular.copy(angular.fromJson(menu.resolve))); 
    }] 
} 

示例数据:

> -- one.js 
> -- two.js 
> -- three.js 

从上面的代码,menu.resolve是从数据库对象,菜单决心将所有行返回“three.js所”。如何设置变量值到每一行?

谢谢! :)

+0

的听起来像是你将需要解析JSON响应并手动更新DOM。 –

回答

0

这是典型的JavaScript性质,你需要做的是使用一个不确定的闭合来解决这个问题,我将要给你一个例子

for(var i=0;i<=2;i++;) 
{ 
      (function(myVar) { // this will hold a value of i 
        $("#someDom").append(myVar)//whatever ur logic should be here 
      })(i); 
} 
+0

在循环中创建函数是一种**糟糕的做法**,对于那些甚至可能不了解其后果的JavaScript新手而言,会造成更多的损害。 – Azamantes

+0

谢谢!我现在概率解决了,这是我改变的代码: 状态= { \t \t \t \t \t网址:menu.url, \t \t \t \t \t标题:menu.title, \t \t \t \t \t图标: menu.icon, \t \t \t \t \t \t \t \t templateUrl:menu.template_url, \t \t \t \t \t控制器:menu.controller, \t \t \t \t \t决心:ResolverFunc(菜单) \t \t \t} 我放置功能循环的外部。 –