2016-07-26 50 views
1

Ich entwickle derzeit eine Web-App mit Hilfe von jhipster, die bootstrap und angular js verwendet.Wie ersetzt man den modalen Dialog durch eine HTML-Seite? Ich muss auf eine HTML-Seite umleiten, ohne das modale Dialogfeld zu verwenden

Wenn ich eine Entität erstellen (Beispiel: Abteilung), erzeugt es CRUD-Betrieb für mich.

Wenn ich versuche, eine Abteilung zu schaffen, zeigt es mir ein Pop-up, das sie Modal

Aber ich möchte diese in einer separaten Seite nicht als Popup aufrufen.

Wie ändert man dies von modal zu einer HTML-Datei? enter image description here

Meine state.js Datei

.state('department.new', { 
     parent: 'department', 
     url: '/new', 
     data: { 
      authorities: ['ROLE_USER'] 
     }, 
     onEnter: ['$stateParams', '$state', '$uibModal', function($stateParams, $state, $uibModal) { 
      $uibModal.open({ 
       templateUrl: 'app/entities/department/department-dialog.html', 
       controller: 'DepartmentDialogController', 
       controllerAs: 'vm', 
       backdrop: 'static', 
       size: 'lg', 
       resolve: { 
        entity: function() { 
         return { 
          deptId: null, 
          deptName: null, 
          id: null 
         }; 
        } 
       } 
      }).result.then(function() { 
       $state.go('department', null, { reload: true }); 
      }, function() { 
       $state.go('department'); 
      }); 
     }] 
    }) 

Ist das, was Sie alle mir zu tun?

.state('department.new', { 
     parent: 'department', 
     url: '/new', 
     data: { 
      authorities: ['ROLE_USER'] 
     }, 
     views: { 
      '[email protected]': { 
          templateUrl: 'app/entities/department/department-dialog.html', 
       controller: 'DepartmentDialogController', 
       controllerAs: 'vm', 
      } 
     }, 
          resolve: { 
        entity: function() { 
         return { 
          deptId: null, 
          deptName: null, 
          id: null 
         }; 
        } 
       } 
      .result.then(function() { 
       $state.go('department', null, { reload: true }); 
      }, function() { 
       $state.go('department'); 
      }), 
        }) 
+0

können Sie nur ein echtes Popup verwenden? – dandavis

+0

statt das modal zu öffnen mit '$ uibModal.open ({' navigieren Sie einfach zu der VorlageUrl übergeben Sie es. – Hodrobond

+0

Ich habe nach Ihren Kommentaren bearbeitet .... Bitte überprüfen @Hodrobond –

Antwort

0

Genau wie alle anderen Nicht-Popup-Seiten haben Sie bereits gefunden, was Sie brauchen, aber mit ein paar kleinen Änderungen & Korrekturen wie translatePartialLoader.

 .state('department.new', { 
       parent: 'department', 
       url: '/new', 
       data: { 
        authorities: ['ROLE_USER'] 
       }, 
       views: { 
        '[email protected]': { 
         templateUrl: 'app/entities/department/department-dialog.html', 
         controller: 'DepartmentDialogController', 
         controllerAs: 'vm' 
        } 
       }, 
       resolve: { 
        translatePartialLoader: ['$translate', '$translatePartialLoader', function ($translate, $translatePartialLoader) { 
         $translatePartialLoader.addPart('department'); 
         return $translate.refresh(); 
        }], 
        entity: function() { 
         return { 
          deptId: null, 
          deptName: null, 
          id: null 
         }; 
       } 
      }) 
0

Bitte klären Sie, dass Ihr aktueller Zustand ist Abteilung und eine neue Abteilung für das Erstellen Sie einen Zustand department.new zu schaffen haben.

Wenn ja, übergeben Sie die Vorlagen-URL direkt, Sie müssen das Uib-Modal nicht öffnen. .state ('department.new', { url: '/ new /', Controller: 'DepartmentDialogController', controllerAs: 'vm', templateUrl: 'app/Einheiten/Bereichs-/Abteilungs dialog.html' })

+0

Ich habe nach Ihren Kommentaren bearbeitet .... Bitte bestätigen Sie @Sim –