无法以角度

时间:2017-08-06 17:21:00

标签: javascript angularjs angular-ui-router angularjs-scope

我在angular1中面临一个非常特殊的问题,可能需要很多背景来理解某人的回答。我现在已经在角度工作了大约4周,但是一个非常奇怪的问题让我感到困惑。

我在页面上有一个左侧垂直菜单,点击它会加载页面右侧的内容。

每次点击我都会启动状态。在这种情况下

$state.go("contrat-synthese", {
   id: offer.refEboard
}, {
   reload: true
});

上面的代码片段位于对点击有效的函数内。

国家" contrat-synthese"如下所示

angular.module('engcApp').config(['$stateProvider', function($stateProvider) {
   var lotSelectionState = "synthese-lot";

   $stateProvider.state('contrat-synthese', {
     parent: 'contrat-lots-resume',
     url: '/synthese',
     views: {
       'content@contrat-lots-resume': {
         templateUrl: 'app/entities/views/synthese/synthese.html',
       },
       'synthese-detail@contrat-synthese': {
         templateUrl: 'app/entities/views/synthese/synthese-details.html',
         controller: 'ContratSyntheseDetailsController',
         controllerAs: 'vm'
       },
       'synthese-lots-navigation@contrat-synthese': {
         templateUrl: 'app/entities/views/common/contrat-lots-navigation.html',
         controller: 'ContratLotsNavigationController',
         controllerAs: 'vm',
         resolve: {
           afficherLotComplet: function() {
             return false;
           },
           afficherAnneeComplet: function() {
             return false;
           },
           afficherSelectionAnnee: function() {
             return true;
           },
           afficherLots: function() {
             return true;
           },
           stateNameToUse: function() {
             return lotSelectionState;
           }
         }
       },
       'synthese-services@contrat-synthese': {
         templateUrl: 'app/entities/views/synthese/synthese-services.html',
         controller: 'ContratSyntheseServicesController',
         controllerAs: 'vm'
       }
     }
   }).state(lotSelectionState, {
     parent: "contrat-synthese",
     params: {
       lots: null
     },
     views: {
       'synthese-composition-lot@contrat-synthese': {
         templateUrl: 'app/entities/views/synthese/synthese-composition.html',
         controller: 'ContratSyntheseCompositionController',
         controllerAs: 'vm'
       },
       'synthese-volumes-lot@contrat-synthese': {
         templateUrl: 'app/entities/views/synthese/synthese-volumes.html',
         controller: 'ContratSyntheseVolumesController',
         controllerAs: 'vm'
       },
       'synthese-modules-lot@contrat-synthese': {
         templateUrl: 'app/entities/views/synthese/synthese-modules.html',
         controller: 'ContratSyntheseModulesController',
         controllerAs: 'vm'
       },
       'synthese-formules-lot@contrat-synthese': {
         templateUrl: 'app/entities/views/synthese/synthese-formules.html',
         controller: 'ContratSyntheseFormulesController',
         controllerAs: 'vm'
       },
     }
   });
 }]);

但是当我调用状态继续页面加载时,它无法在上面的合成状态中加载 lotSelectionState

我只是不明白为什么当我从外面打电话时它无法加载状态。

当我再次点击左侧横幅上的链接时,也未加载子状态。

解决方案我尝试了第二种情况,我尝试了以下方法:

state.go("contrat-synthese", {
  id: offer.refEboard
}, {
  reload: true
});

但是为什么我无法加载子状态?我很困惑:(

如果需要,可以提供更多解释。

0 个答案:

没有答案