Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 异步n选项_Javascript_Angularjs_Asynchronous_Angularjs Ng Options - Fatal编程技术网

Javascript 异步n选项

Javascript 异步n选项,javascript,angularjs,asynchronous,angularjs-ng-options,Javascript,Angularjs,Asynchronous,Angularjs Ng Options,老实说,我不知道我在Angular中做什么,所以这可能是很糟糕的编码实践。在任何情况下,我都试图将一些数据异步加载到元素中 以下是HTML模板: <div ng-include src="'scripts/common/toolbar/toolbar.html'"></div> <div class="wrapper"> <div ng-include src="'scripts/common/header/pageheader.html'"&g

老实说,我不知道我在Angular中做什么,所以这可能是很糟糕的编码实践。在任何情况下,我都试图将一些数据异步加载到
元素中

以下是HTML模板:

<div ng-include src="'scripts/common/toolbar/toolbar.html'"></div>
<div class="wrapper">
    <div ng-include src="'scripts/common/header/pageheader.html'"></div>
    <label>Advertisers:
        <select ng-model="selectedAdvertiser" ng-options="adv as adv.name for adv in advertisers"></select>
    </label>
</div>
从user.getAdvancers()返回的数据如下所示:

[{name:'aaaa',id:0},{name:'bbbb',id:1}]

最后,这里是userService

var userPromise,

        getUser = function() {
            if(!userPromise) {
                var deferred = $q.defer();
                userPromise = deferred.promise;
                deferred.resolve(User.createFromServerData(null));
            }
            return userPromise;
        };

我试过使用$timeout、$scope、$apply、$scope、$evalAsync……我几乎没有主意了。我根本无法获取任何数据以显示在select中。任何帮助都将不胜感激!谢谢。

我想这应该行得通:

userService.getUser().then(function(user) {
    $scope.advertisers = user.getAdvertisers();
});
或者,如果
getadvisors
返回承诺:

userService.getUser().then(function(user) {
    user.getAdvertisers().then(function (advertisers) {
        $scope.advertisers = advertisers;
    });
});

没关系。这是我检索数据的方式的问题。哦

嘿,是的,我也试过了(你的第一个代码)。我得到了一个空选项,看起来是这样的:
我认为你应该发布你的答案(修复),以利于其他人?
userService.getUser().then(function(user) {
    user.getAdvertisers().then(function (advertisers) {
        $scope.advertisers = advertisers;
    });
});