gpt4 book ai didi

javascript - 来自嵌套对象的 Angularjs $scope.object

转载 作者:行者123 更新时间:2023-11-30 16:54:04 25 4
gpt4 key购买 nike

我有一个 $scope.currentUser 对象和一个嵌套的 OwnedCompany 对象,如下所示:

app.controller 'dashboardsCtrl', ($scope, Api, Auth) ->
$scope.currentUser = Api.User.get(id: Auth.user())
$scope.ownedCompany = $scope.currentUser.owned_company

{{currentUser}} 返回:

user: { 
"name": "Ryan",
"owned_company":{"name":"XYZ"}
}

{{currentUser.owned_company}} 返回:

{"name":"XYZ"}

但是 {{ownedCompany}} 返回 nil。


如何让 $scope.ownedCompany = $scope.currentUser.owned_company 工作?


解决方案

根据@mohamedrias 的回答,

app.controller 'dashboardsCtrl', ($scope, Api, Auth) ->
Api.User.get(id: Auth.user()).$promise.then (currentUser) ->
$scope.currentUser = currentUser
$scope.ownedCompany = currentUser.owned_company

{{ownedCompany}} 返回:

{name:"XYZ"}

最佳答案

  $scope.currentUser = Api.User.get(id: Auth.user())

这是您获取当前用户详细信息的异步​​调用。所以它会在稍后重新处理。

要么必须使用promise ad put

  $scope.ownedCompany = $scope.currentUser.owned_company

then block 中。

否则在该对象上注册一个 watch 并执行分配。

关于javascript - 来自嵌套对象的 Angularjs $scope.object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30023014/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com