Framework7:登录重定向
Framework7: Login redirect
当用户访问login.html页面时,localStorage用于检查用户是否登录。页面应重定向到profile.html并显示notification消息。显示消息,但页面(login.html)是相同的。。
if( localStorage.user_login ) {
mainView.router.loadPage({url:'profile.html', ignoreCache:true, reload:true });
myApp.addNotification( {
message: 'Welcome '+ localStorage.user_username +'!'
} );
}
如果用户已登录,我如何重定向页面?
将其放在myApp framework7初始化之前。
$$(document).on('pageInit', function (e) {
var page = e.detail.page;
if (page.name === 'index') {
try{
var storedData = window.localStorage['f7form-'+ 'idofyourloginform'];
if(storedData) {
//do your ajax login request here
// if successful do your login redirect
mainView.router.loadPage({url:'profile.html', ignoreCache:true, reload:true });
}
}
);
在登录页面中,使用以下代码:
HTML
<a href="#" class="button button-fill color-blue close-login-screen" @click="signIn">Log In </a>
JavaScript
return {
methods: {
signIn: function () {
var $ = this.$;
var app = this.$app;
var username = $('input#demo-username-1').val();
var password = $('input#demo-password-2').val();
app.request.post('http://localhost:4103/api/User/Login?username='+username+'&password='+password, function (data) {
var obj = JSON.parse(data);
console.log(obj);
console.log(obj.success);
if (obj.success) {
app.data.IsLogin=true;
app.data.UserName='salman';
app.views.main.router.navigate(obj.RedirectUrl);
} else {
app.dialog.alert(obj.Message , function () {});
}
});
}
}
}
尝试调用
myApp.closeModal('.login-screen.modal-in')
之前
mainView.router.loadPage({url:'profile.html', ignoreCache:true, reload:true })
这应该能解决问题。
使用jquery 在Framework7中登录页面ajax发布和响应
在你的my-app.js文件中使用这样的代码
myApp.onPageInit('sign-in', function(page) {
$('#loginb').click(function() {
$('#loginb').html('Please Wait...');
var fuid = $('#uid').val();
var fpass = $('#pass').val();
$.ajax({
url: 'chklogin.php',
data: {
"uid": fuid,
"pass": fpass
},
type: 'post',
success: function(returnedData) {
$('#loginb').html(returnedData);
if (returnedData == "Success") {
mainView.router.load({
url: 'deshboard.php',
ignoreCache: true
});
} else {
mainView.router.load({
url: 'login.php',
ignoreCache: true
});
}
}
});
});
});
将此函数与路由名称一起使用:app.views.main.router.navigate('/profile');
但请确保app
是您初始化项目的对象,例如:
var app = new Framework7({....});
相关文章:
- 我尝试在登录脚本中使用ajax,但页面不会重定向
- 访问NeedLogin操作后不重定向到登录页面
- 登录后重定向,缓存页面问题-Javascript
- Framework7:登录重定向
- 在页面加载之前检查登录和重定向
- 如何在ASP.NET中创建重定向到登录页
- 意思是.js - 登录后重定向用户 - 在本地工作,但在部署时不起作用
- 登录尝试和重定向
- Laravel:在 ajax 请求的会话过期后重定向到登录
- 用户使用铁路由器登录后如何重定向
- 从登录页重定向到主页
- 登录后PHP登录脚本重定向不起作用
- 如何基于电子邮件地址域重定向到电子邮件登录页面
- Facebook登录重定向问题
- 如果用户尚未登录Angular JS,请重定向至登录页面
- 重定向“如果确认了电子邮件,则将用户重定向到登录页”
- 防止Angular网站上未经授权的用户在重定向到登录之前看到网站的最佳方式
- 如果未处于登录状态,如何重定向到登录页面,登录后重定向到原始页面
- AngularFire,登录身份验证和重定向并不完全有效
- 从angularjs重定向登录页面到欢迎页面