diff --git a/src/pages/login/login.js b/src/pages/login/login.js index 55b3e9ae..e782b051 100644 --- a/src/pages/login/login.js +++ b/src/pages/login/login.js @@ -16,10 +16,9 @@ export default class App extends Component { } componentWillMount() { - const tokenString = this.props.location.search; - const token = tokenString.substring(tokenString.indexOf('=') + 1); + const { token, head } = this.getQuery(this.props.location.search); /* 判断是否有token */ - if (tokenString && tokenString.indexOf('=') > -1) { + if (token) { this.onSubmit(token); return; } @@ -27,6 +26,15 @@ export default class App extends Component { this.toUnifiedLogin(); } + /* 解析url参数 */ + getQuery = (url) => + (url.match(/([^?=&]+)(=([^&]*))/g) || []).reduce( + (a, v) => ( + (a[v.slice(0, v.indexOf('='))] = v.slice(v.indexOf('=') + 1)), a + ), + {} + ); + /* 跳转统一登录平台 */ toUnifiedLogin() { setTimeout(() => {