我想默认我的仪表板页面。所以在app.js中编写以下代码
$urlRouterProvider.otherwise('/app/dashboard')
但是当在mobil设备中启动离子应用程序时,在显示之前登录页面,仪表板页面随后出现消失。我想从登录页面之前永远不会显示仪表板页面如何解决这个问题。
登录页面:
<ion-view view-title="Kayıt Ol" hide-back-button="true">
<ion-content class="padding ">
<div style="padding:40px 0 40px 0; text-align:center;font-size:45px;color:#ff6707">
Login
</div>
<div class="card list-inset">
<form novalidate >
<label class="item item-input">
<input type="email" placeholder="Email" required ng-model="user.email">
</label>
<label class="item item-input">
<input type="password" placeholder="Email" required ng-model="user.password">
</label>
</form>
</div>
<button class="button button-block button-positive icon-button icon-center ion-person-add" ng-disabled="!user.email && !user.password" ng-click="Login()">Login</button>
</ion-content>
</ion-view>
app.js
.state('app', {
url: "/app",
cache: false,
abstract: true,
templateUrl: "templates/app.html",
controller: 'AppCtrl'
})
.state('login', {
url: "/login",
cache: false,
abstract: true,
templateUrl: "templates/login.html",
controller: 'LoginCtrl'
})
.state('app.dashboard', {
url: '/dashboard',
cache: false,
views: {
'menuContent': {
templateUrl: 'templates/dashboard.html',
controller: 'DashboardCtrl'
}
}
})
$urlRouterProvider.otherwise('/app/dashboard');
答案 0 :(得分:0)
为什么不使用$urlRouterProvider.otherwise('/login')
?然后在LoginCtrl
控制器中,您应检查用户是否已登录,然后您可以使用$state.go('app.dashboard')
。
但是,也许这不是最好的主意。我不确定这一点,但在这里你用另一种方法得到了很好的答案:https://stackoverflow.com/a/32734632/2012904
我认为你使用抽象属性是错误的。检查一下:https://stackoverflow.com/a/24969722/2012904
但正如其他人所说,将您的代码发布到控制器中,以便我们完全理解您的问题。