1

페이지를 새로 고치는 데 문제가 있습니다. 예 : 기본 앱이 열리고 URL이 localhost:8000/dashboard 인 경우 메뉴에서 사용자 탭으로 이동하거나 다른 곳의 URL은 localhost:8000/users/list입니다. 사용자가있는 동안 페이지를 새로 고침하면 대시 보드로 이동하여 전체 페이지를 다시로드합니다.
백엔드가 올바르게 사용자 지정 상태를 만들었고 'ng-admin'을 부모로 지정하지 않으면 새로 고침이 진행되는 위치에 머물러 있지만 부모를 추가하면 전체 앱을 다시로드합니다. html5mode도 사용할 수 있습니다.새로 고침 후 전체 ng-admin을 다시로드하지 못하도록하는 방법

$locationProvider.html5Mode({ 
    enabled: true, 
    requireBase: false 
}); 

엔티티 지정 NG-관리 문서로서 첨가된다

app.config(['NgAdminConfigurationProvider', 'RestangularProvider', function(nga, RestangularProvider) { 
    var admin = nga.application('Admin') // application main title 
     .debug(false) // debug disabled 
     .baseApiUrl('/api/'); // main API endpoint 

    var users = nga.entity('users'); 

    admin 
     .addEntity(users); 
    users.listView() 
      .title('Admin users') 
      .fields([ 
       nga.field('name') 
        .label('Name') 
        .isDetailLink(true), 
       nga.field('email') 
        .label('E-mail Address'), 
       nga.field('created', 'date') 
        .label('Created') 
        .map(fromNow), 
       nga.field('modified', 'date') 
        .label('Modified') 
        .map(transformDate), 
       nga.field('active', 'boolean') 
        .label('Status'), 
       nga.field('createdBy') 
        .label('Created by'), 
       ]); 

코드의 다음 블록

$rootScope.$on('$stateChangeSuccess', function (event, newUrl, oldUrl, newState, oldState) { 
    console.log('event:' , event); 
    console.log('newUrl:' , newUrl); 
    console.log('oldUrl:' , oldUrl); 
    console.log('newState:' , newState); 
    console.log('oldState:' , oldState); 
}) 

대시 보드에서 사용자에게 갈 때 그 출력을 제공한다 :

event: {name: "$stateChangeSuccess", targetScope: p, defaultPrevented: false, currentScope: p, preventDefault: ƒ} 
newUrl: {url: "?{search:json}&{page:int}&sortField&sortDir", params: {…}, parent: "listLayout", views: {…}, name: "list"} 
oldUrl: {entity: "users", search: {…}, page: 1, sortField: null, sortDir: null} 
newState: {parent: "ng-admin", url: "/dashboard?sortField&sortDir", params: {…}, controller: "DashboardController", controllerAs: "dashboardController", …} 
oldState: {sortField: null, sortDir: null} 

새로 고침시

event: {name: "$stateChangeSuccess", targetScope: p, defaultPrevented: false, currentScope: p, preventDefault: ƒ} 
newUrl: {parent: "ng-admin", url: "/dashboard?sortField&sortDir", params: {…}, controller: "DashboardController", controllerAs: "dashboardController", …} 
oldUrl: {sortField: null, sortDir: null} 
newState: {url: "?{search:json}&{page:int}&sortField&sortDir", params: {…}, parent: "listLayout", views: {…}, name: "list"} 
oldState: {entity: "users", search: {…}, page: 1, sortField: null, sortDir: null} 

감사합니다.

답변

0

문제는 대시 보드로 이동하는 방법을 추가하는 헤더 컨트롤러 기능에 실수가 있었으며 헤더가 다시 초기화 될 때마다 호출되었습니다. 아마 이것은 누군가를 도울 것입니다.

+0

해결 방법에 대한 자세한 정보를 제공해 주시겠습니까? –

+0

'함수 HeaderController (Auth, $ location, $ sessionStorage, $ localStorage) { var vm = this; vm.action = { 로그 아웃 : 로그 아웃, goTo : goTo }}; function logout() { Auth.Logout(); } function goTo (state) { $ location.path (state); } } ' –

+1

나는 이것을 다음과 같이 사용했다 : vm.action = {logout : logout, goTo : goTo()}; –