[英]how to navigate between two pages in ionic
我正在开发ionic框架。我不知道如何在两个页面之间导航。我试图使用ionic使用侧面菜单模板创建登录页面。这是login.html的代码
<ion-view view-title="Login">
<ion-header-bar>
<h1 class="title">Login</h1>
</ion-header-bar>
<ion-content>
<form ng-submit="doLogin()">
<div class="list">
<label class="item item-input item-stacked-label">
<span class="input-label">Username</span>
<input type="text" placeholder="Email or Phone">
</label>
<label class="item item-input item-stacked-label">
<span class="input-label">Password</span>
<input type="text" placeholder="Password">
</label>
<label class="item">
<button class="button button-block button-positive" type="submit">Log in</button>
</label>
<label class="item">
<span class="input-label">New user?</span>
<a class="button ion-plus-round" href="#/app/signup">Signup</a>
</label>
</div>
</form>
</ion-content>
</ion-view>
在app.js中:-
.state('app.login', {
url: "/login",
views: {
'menuContent': {
templateUrl: "templates/login.html",
controller: 'LoginCtrl'
}
}
})
.state('app.signup', {
url: '/signup',
views: {
'menuContent': {
templateUrl: 'templates/signup.html',
controller: 'LoginCtrl'
}
}
})
我将登录按钮放在menu.html中,其余的都一样
<ion-item nav-clear menu-close href="#/app/login">
Login
</ion-item>
当我单击菜单中的登录按钮时,但登录页面中的注册按钮不起作用。您能帮我吗?我是ionic和angularjs的新手
删除属性“ href”并添加ui-sref =“ app.signup” ...希望它将解决问题。
同样在路由配置中,更改视图对象名称“ menuContent”以进行合并。
.state('app.login', {
url: "/login",
views: {
'menuLogin': {
templateUrl: "templates/login.html",
controller: 'LoginCtrl'
}
}
})
.state('app.signup', {
url: '/signup',
views: {
'menuSingup': {
templateUrl: 'templates/signup.html',
controller: 'LoginCtrl'
}
}
})
这应该有帮助,
<ion-view view-title="Login" name="loginView">
<ion-header-bar>
<h1 class="title">Login</h1>
</ion-header-bar>
<ion-content>
<form ng-submit="doLogin()">
<div class="list">
<label class="item item-input item-stacked-label">
<span class="input-label">Username</span>
<input type="text" placeholder="Email or Phone">
</label>
<label class="item item-input item-stacked-label">
<span class="input-label">Password</span>
<input type="text" placeholder="Password">
</label>
<label class="item">
<button class="button button-block button-positive" type="submit">Log in</button>
</label>
<label class="item">
<span class="input-label">New user?</span>
<a class="button ion-plus-round" ui-sref="app.signup">Signup</a>
</label>
</div>
</form>
</ion-content>
</ion-view>
您的路线应该是
.state('app.login', {
url: "/login",
views: {
'loginView': {
templateUrl: "templates/login.html",
controller: 'LoginCtrl'
}
}
})
.state('app.signup', {
url: '/signup',
views: {
'signupView': {
templateUrl: 'templates/signup.html',
controller: 'LoginCtrl'
}
}
})
您的登录按钮,
<ion-item nav-clear menu-close ui-sref="app.login">
Login
</ion-item>
UI-Router由AngularJS和Ionic使用。 因此,请考虑使用ui-sref
属性。 这还有另一个优势,显然,当您使用诸如ui-sref="app.login"
时,您的父状态仍然绑定到'app'。 处理Angular时不要使用href
。 为此,您有一个Angular选项,即ng-href
。
为注册页面添加<ion-view view-title="Signup" name="signupView">
希望这可以帮助
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.