2017-04-20 46 views
0

我有从后端API如下来一个JSON:解析来自后端API来一个JSON

{"roleIds": [1], "menuIds": [1,2,3]} 

在角UI,AM如下消耗数据:

$http.post(url,{userName:$scope.credential.email,password:$scope.credential.password}).success(function (data, status, headers, config) { 
            $cookies.userData = data; 
            $window.location.href = 'index.html'; 
          }) 

如何可以我解析$ cookies.userData对象以获取roleIds和menuIds?

回答

0

$ cookies.userData = JSON.parse(data); 它会返回一个对象。

0
$cookies.userData = JSON.parse(data); 

然后你就可以访问它想:

$cookies.userData["roleIds"] 
$cookies.userData["menuIds"] 
0

为什么$cookies.userData

可以在正常variable$scope对象分配给它,然后使用dot (.)操作解析它。

DEMO

var userData = {"roleIds": [1], "menuIds": [1,2,3]} 
 

 
console.log(userData.roleIds); 
 
console.log(userData.menuIds);

+0

我的UI是使用角JS单个页面的应用程序。我已经使用Cookie来存储用户信息,以便在应用程序中访问。使用$范围将被绑定到特定的视图和控制器。任何替代方案?建议? –

+0

您可以使用服务在应用程序之间,几个控制器和视图之间进行通信,或者如果数据不那么关键,则可以使用HTML5 localstorage。 –

+0

是的服务是一个好方法。可以通过创建的服务的函数调用来公开数据。 –