將資料解析為狀態

你可以在轉換到資料時將資料轉換為你的狀態,通常在狀態需要使用該資料時有用,或者在需要對某些提供的輸入進行身份驗證時解析為狀態。

定義狀態時,需要提供要解析為 .resolve 屬性的值的對映,每個已解析的值應該具有返回 promise 的函式

.state('main', {
     url: "/main",
     templateUrl: "path/to/main.html",
     controller: 'mainCtrl',
     resolve: {
         serverData: function ($http) {
             return $http.get('some/url');
         }
     }
});

現在,在 mainCtrl 中,你可以訪問資料(即 $http 呼叫成功解析)。

.controller("mainCtrl", function($scope, serverData) {
    $scope.resolvedData = serverData.then(resp=> resp.data);
    ....
})