我的 Meteor 应用程序中有一个登录方法,可在登录系统后将用户重定向到不同的路线。这是我的方法:
Meteor.loginWithPassword(emailVar, passwordVar, function (err) {
if (err !== undefined) {
// error handling code
} else {
if (!Roles.userIsInRole(Meteor.userId(), 'active')) {
return Router.go('account-deactivated');
}
if (Roles.userIsInRole(Meteor.userId(), 'pharmacist')) {
return Router.go('pharmacist-dashboard');
}
if (Roles.userIsInRole(Meteor.userId(), 'admin')) {
return Router.go('admin-dashboard');
}
}
});
虽然此方法按预期工作,但由于 JavaScript 加载问题(例如:app.min.js 等),它会在我的主题(AdminLTE)中产生一些问题。例如,滑动效果在重定向页面上不起作用。但是当我从浏览器重新加载页面时,它开始按预期工作。
我知道这是一个需要解决的单独问题。但是,如果有一种方法可以使用 Iron-router 完全重新加载 Meteor 中的链接,那将会很有帮助。特别是当页面被转移到使用一组新的 JavaScript 和 CSS 的完全不同的用户环境时。
我浏览了Iron-router的用户文档,但修复并没有提供解决方案。