約束からオブジェクトの配列を取得しようとしています。私には2つの問題があります。まず、GetAccounts()
がAccountService
で呼び出されると、2つのオブジェクトが返されます。解決策では、変数の結果をチェックすると、2つのオブジェクトがありません。第二に、コントローラがインスタンス化されると、このエラーが表示されます。アカウントが定義されていません。誰かが私が間違っていることを教えてもらえますか?前もって感謝します。
AccountService.js
app.factory('AccountService', ['$http', function ($http) {
return {
GetAccounts: function() {
return $http.get('api/Account/GetAccounts')
.then(function success(response) {
return response.data;
}, function error(response) {
return console.log("Oops!");
});
}
};
}]);
AdminController.js
app.component('admin', {
templateUrl: 'Content/app/components/admin/Admin.html',
bindings: {
accounts: '<'
},
controller: function() {
this.accounts = accounts;
}
})
RO ute.js
app.config(['$routeProvider', function ($routeProvider) {
$routeProvider.when('/admin', {
template: '<admin accounts="$resolve.GetAccounts"></admin>',
resolve: {
GetAccounts: ['AccountService', function (AccountService) {
var result = AccountService.GetAccounts();
return result;
}]
}
})
}]);
あなたが実際にAPIを作成していますか? – floor
[ngRouteでコンポーネントコントローラにサービスを解決する問題の重複](http://stackoverflow.com/questions/43242296/issue-with-ngroute-injecting-resolve-services-into-component-controller) – georgeawg
'GetAccounts'関数は、拒否された約束を成功した約束に変換する**ことに注意してください。 [$ qでの角度実行命令](http://stackoverflow.com/questions/34324153/angular-execution-order-with-q/34326388#34326388)を参照してください - georgeawg – georgeawg