2017-06-20 63 views
0

我想在用戶登錄時顯示一個HTML文件。現在我們有一個幻燈片,它在登錄後呈現給用戶,但在它之後,我想顯示另一個視圖。用戶登錄後的歡迎界面| Angular 1.5和Ionic V1

我在這個項目上,雖然我是新的角度和離子跳下來,我想這是我們如何渲染出的幻燈片:

在我們的控制,我們有操作幻燈片背後的邏輯的IntroCtrl。那麼,我需要創建另一個控制器來顯示我的視圖嗎?

.controller('IntroCtrl', function ($scope, $state, $localStorage, $ionicSlideBoxDelegate, $ionicScrollDelegate, $stateParams) { 

$scope.$on('$ionicView.enter', function (e) { 
    $ionicScrollDelegate.resize() 
    $ionicSlideBoxDelegate.slide(0, 1) 
}) 
$scope.email = $stateParams.email 
$scope.startApp = function() { 
    $localStorage.hasViewedSlideBox 
    $state.transitionTo('tab.dash') 
} 

$scope.next = function() { 
    $ionicSlideBoxDelegate.next(); 
} 

})

我發現這個在我們app.js和該文件包含$stateProvider$urlRouterProvider$ionicConfigProvider。 在底部,我發現很多這樣的:

.state('login', { 
url: '/login', 
cache: false, 
templateUrl: 'templates/login.html', 
controller: 'LoginCtrl' 

})

所以我想我應該創建一個包含templateUrl和我的觀點的控制器一個新的?我在網上讀到這些.state與Angular路由有關,但我可能是錯的。

但是,如果有人能指引我,我會非常高興。 就像我說的,我想在幻燈片放映後顯示一個新的視圖。

謝謝!

回答

0

我建議創建一個新的HTML和設計「afterLogin」 HTML和複製你的state(要在其中登錄後重定向),其註釋掉,改變templateUrl到新的HTML文件。
這應該做你想要的一切。
新文件中不需要您的IntroCrl,因爲它只會運行不存在的幻燈片。
但你應該插入

$scope.startApp = function() { 
    $localStorage.hasViewedSlideBox 
    $state.transitionTo('tab.dash') 
} 

到新的控制器。

如果你沒有一個路線,你登錄後重定向,你必須要提供更多的代碼,所以我們可以更深入瞭解它

+0

嘿! 我沒有意識到'$ state.transitionTo('tab.dash')'轉換到另一個'.state'。所有的狀態都在我的'app.js'文件中創建。 但是你想讓我插入你寫的那段代碼? –

+0

我認爲startApp實際上會啓動應用程序並停止滑塊 – Mephiztopheles

相關問題