fix(bricks): 非用户主动登录(401自动弹窗)成功后不刷新页面
- withLoginInfo 弹登录窗带 login_source=auto 标记被动登录 - Message 类读 refresh=false 设 _login_no_reload,跳过 dispatch user_logined - 用户主动点击登录仍正常刷新
This commit is contained in:
parent
3c8eb4bb3d
commit
f2f9893bac
@ -171,7 +171,10 @@ bricks.HttpText = class {
|
|||||||
var login_window = await bricks.widgetBuild({
|
var login_window = await bricks.widgetBuild({
|
||||||
"widgettype":"urlwidget",
|
"widgettype":"urlwidget",
|
||||||
"options":{
|
"options":{
|
||||||
"url":bricks.app.login_url
|
"url":bricks.app.login_url,
|
||||||
|
"params":{
|
||||||
|
"login_source":"auto"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -208,7 +211,12 @@ bricks.HttpText = class {
|
|||||||
console.log('withLoginInfo: retry successful');
|
console.log('withLoginInfo: retry successful');
|
||||||
// Dispatch user_logined event so shell can reload menu
|
// Dispatch user_logined event so shell can reload menu
|
||||||
if (bricks.app && bricks.app.dispatch) {
|
if (bricks.app && bricks.app.dispatch) {
|
||||||
bricks.app.dispatch('user_logined');
|
if (bricks.app._login_no_reload) {
|
||||||
|
bricks.app._login_no_reload = false;
|
||||||
|
console.log('withLoginInfo: non-user login, skip menu reload');
|
||||||
|
} else {
|
||||||
|
bricks.app.dispatch('user_logined');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return await this.get_result_data(retryResult);
|
return await this.get_result_data(retryResult);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -9,6 +9,10 @@ bricks.Message = class extends bricks.PopupWindow {
|
|||||||
*/
|
*/
|
||||||
constructor(opts){
|
constructor(opts){
|
||||||
opts.auto_open = true;
|
opts.auto_open = true;
|
||||||
|
// 登录消息带 refresh=false 时,标记不刷新(非用户主动登录)
|
||||||
|
if (opts.refresh === false && bricks.app){
|
||||||
|
bricks.app._login_no_reload = true;
|
||||||
|
}
|
||||||
super(opts);
|
super(opts);
|
||||||
this.create_message_widget();
|
this.create_message_widget();
|
||||||
this.set_css('message');
|
this.set_css('message');
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user