我使用的是Angular 1.5.5、Angular-ui-router 0.2.18、angular- meteor -promiser 1.1.0和meteor 1.3.3
在我的应用程序中,我使用了以下路由定义:(还有许多其他状态):
function routerConfig($stateProvider, $urlRouterProvider, $locationProvider) {
$locationProvider.html5Mode(true);
$stateProvider
.state('auditionExtExec', {
url: '/AuditionExtExecute/:id',
templateUrl: 'client/auditions/auditionExtExec.html',
resolve: {
auditionsubs: function($promiser) {
"use strict";
console.log('in resolve');
return $promiser.subscribe('auditions');
},
},
controller: 'AuditionExtExecCtrl',
controllerAs: 'vm'
})
控制器是:
angular
.module('brgo')
.controller('AuditionExtExecCtrl', function($state, $stateParams, $scope, $reactive, $promiser, auditionsubs) {
var vm = this;
$reactive(vm).attach($scope);
vm.auditionId = $stateParams.id;
vm.subscribe('auditions');
vm.start = false;
vm.auditionResults = {};
var currentDate = new Date();
vm.autorun(() => {
vm.audition = Auditions.findOne({
_id: vm.auditionId
});
});
vm.addNewExecution = function() {
vm.auditionResults.auditions = angular.copy(vm.audition.auditions);
AuditionExecs.insert(vm.auditionResults);
};
vm.startaudition = function() {
vm.start = true;
};
});
此页面用于显示audition MongoDb表中记录的联系人,并将结果写入AuditionExec MongoDb表
当应用程序运行时,一切看起来都正常。但是,当我处于auditionExtExec状态时,将URL复制到新窗口中时,新窗口中的视图会显示两次。当我从解析中删除$promiser时,它看起来工作正常
发布于 2016-06-20 01:54:25
删除promiser.subscribe,问题就会消失
https://stackoverflow.com/questions/37882641
复制相似问题