2017-06-22 75 views
0

慢我有一個ASP.NET MVC和AngularJS的應用程序。 我的路線由AngularJS和ui-router管理。爲什麼第一頁面加載與ASP.MVC + AngularJS

首次AngularJS加載partialview它更緩慢然後第二個。這是什麼原因?

有我的代碼:

AngularJS

app.config(function ($httpProvider, $urlRouterProvider, $locationProvider, $stateProvider) { 
    $urlRouterProvider.otherwise('/home'); 
    $httpProvider.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest'; 
    $locationProvider.html5Mode(true); 

    var homeState = { 
     name: 'home', 
     url:'/home', 
     controller: 'HomeCtrl', 
     controllerAs:'vm', 
     templateUrl:'/AngularJS/Home/Home' //AngularJS is a Area/Controler/Method 
    } 
    var loginState = { 
     name: 'login', 
     url: '/login', 
     controller: 'LoginCtrl', 
     controllerAs: 'vm', 
     templateUrl: '/AngularJS/Home/Login' 
    } 
    var registrationState = { 
     name: 'registration', 
     url: '/registration', 
     controller: 'RegistrationCtrl', 
     controllerAs: 'vm', 
     templateUrl: '/AngularJS/Home/Registration' 
    } 
    var dashboardState = { 
     name: 'dashboard', 
     url: '/dashboard', 
     controller: 'DashboardCtrl', 
     controllerAs: 'vm', 
     templateUrl: '/AngularJS/Home/Dashboard' 
    } 

... 
    $stateProvider.state(homeState); 
    $stateProvider.state(loginState); 
    $stateProvider.state(registrationState); 
    $stateProvider.state(dashboardState); 
    $stateProvider.state(gameState); 
    $stateProvider.state(userState); 
    $stateProvider.state(newGameState); 
    $stateProvider.state(platformState); 
    $stateProvider.state(unavailabilityState); 
    $stateProvider.state(teamsState); 
    $stateProvider.state(newTeamState); 
    $stateProvider.state(editTeamState); 
    $stateProvider.state(detailTeamState); 

    $httpProvider.interceptors.push(requestInterceptor); 


}) 

ASP.NET MVC

public PartialViewResult Home() 
     { 
      ViewBag.Title = "Home"; 
      return PartialView(); 
     } 
     public PartialViewResult Login() 
     { 
      ViewBag.Title = "Login"; 
      return PartialView(); 
     } 
     public PartialViewResult Registration() 
     { 
      ViewBag.Title = "Registration"; 
      return PartialView(); 
     } 

     public PartialViewResult Dashboard() 
     { 
      ViewBag.Title = "Dashboard"; 
      return PartialView(); 
     } 

... 

爲例加載時間: 首先 enter image description here

enter image description here

+0

嘗試使用谷歌瀏覽器的網絡分析器,以檢查其資源需要時間來加載 – Laazo

+0

@Laazo我從網絡分析器添加了圖片。 – nevradub

回答

0

應用程序可能會試圖加載已添加到模板大資源,發現它是使用Chrome瀏覽器(它在其他瀏覽器也可以作爲良好)跟隨波紋管步驟的一種方式,

右鍵單擊該頁面,然後選擇檢查元素,然後選擇網絡選項卡作爲波紋管。 enter image description here

那裏,你可以看到,把加載每個資源的時候,其越來越高的時候,網站會花費更多的時間來加載

+0

是的,我從我的網絡添加了打印。 – nevradub

+0

大概需要幾秒鐘來加載頁面? –

+0

我第一次加載我的頁面遊戲時:2,65s。 (請求GetAll 533ms)第二次53ms(頁面+請求)。我不知道爲什麼我在網絡谷歌中看不到我的網頁。在所有頁面第一次都有這個。沒有與遊戲頁面jjust。 – nevradub

相關問題