angular 承诺无效的点语法
angular dot syntax with promise not working
我正在从我的 $stateProvider
中有解析的服务返回承诺
然后我在实例化控制器之前将承诺添加到我的控制器视图模型
我正在尝试使用点语法来访问承诺的不同部分,但它不起作用
同样,当我展示整个承诺时 (vm.detail = historyDetailPromise) 它只显示为 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 = historyDetailPromise[0];在我的控制器中,因为返回的承诺是一个数组而不是一个对象,我错过了 [0]
我正在从我的 $stateProvider
中有解析的服务返回承诺然后我在实例化控制器之前将承诺添加到我的控制器视图模型
我正在尝试使用点语法来访问承诺的不同部分,但它不起作用
同样,当我展示整个承诺时 (vm.detail = historyDetailPromise) 它只显示为 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 = historyDetailPromise[0];在我的控制器中,因为返回的承诺是一个数组而不是一个对象,我错过了 [0]