angular 承诺无效的点语法

angular dot syntax with promise not working

我正在从我的 $stateProvider

中有解析的服务返回承诺

然后我在实例化控制器之前将承诺添加到我的控制器视图模型

我正在尝试使用点语法来访问承诺的不同部分,但它不起作用

同样,当我展示整个承诺时 (vm.detail = historyDe​​tailPromise) 它只显示为 JSON

求助!!

depositDetail.html

(function () {
    'use strict';

    angular
        .module('app.history')
        .config(stateProvider)
        .controller('HistoryDetail', HistoryDetail);

    stateProvider.$inject = ['$stateProvider'];
    HistoryDetail.$inject = ['historyDetailPromise'];

    /* @ngInject */
    function stateProvider($stateProvider){
        $stateProvider
            .state('app.history-detail', {
                url: "/history/:id",
                views: {
                    'menuContent': {
                        templateUrl: "app/history/depositDetail.html",
                        controller: 'HistoryDetail as vm',
                        resolve: {
                            historyDetailPromise: function(historyService, $stateParams){
                                return historyService.historyDetail($stateParams.id);
                            }
                        }
                    }
                }
            })
    }

    /* @ngInject */
    function HistoryDetail(historyDetailPromise) {
        /* jshint validthis: true */
        var vm = this;

        vm.activate = activate;
        vm.title = 'HistoryDetail';
        vm.detail = historyDetailPromise;

        activate();

        ////////////////

        function activate() {
        }


    }

})();
<ion-view view-title="{{vm.title}}">
  <ion-content>
    <h1>{{vm.title}}</h1>
    <h1>{{vm.detail.id}}</h1>
  </ion-content>
</ion-view>

我真正需要做的就是使用 vm.detail = historyDe​​tailPromise[0];在我的控制器中,因为返回的承诺是一个数组而不是一个对象,我错过了 [0]