authLogin.vue 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <!-- 移动端 twitter授权登录中间页 -->
  2. <template>
  3. <div class="welcome">
  4. <span class="text"></span>
  5. </div>
  6. </template>
  7. <script>
  8. import { setStorage, storageKey } from '../../utils/help';
  9. export default {
  10. name: 'authLogin',
  11. data() {
  12. return {
  13. code: '',
  14. };
  15. },
  16. methods: {
  17. close() {
  18. window.close();
  19. },
  20. },
  21. mounted() {
  22. let url = new URL(window.location.href);
  23. let search = url.search;
  24. let urlParams = new URLSearchParams(search);
  25. let verifier = urlParams.get('oauth_verifier');
  26. if (verifier) {
  27. setStorage(storageKey.verifier, verifier);
  28. let time = process.env.NODE_ENV === 'production' ? 200 : 500;
  29. setTimeout(() => {
  30. this.close();
  31. }, time);
  32. } else {
  33. // 用户取消 或者 异常进入
  34. setStorage(storageKey.backFromTwitterLogin, 1);
  35. this.close();
  36. }
  37. },
  38. };
  39. </script>
  40. <style lang="scss" scoped>
  41. body {
  42. background-color: #f5f5f5;
  43. }
  44. .welcome {
  45. display: flex;
  46. align-items: center;
  47. justify-content: center;
  48. width: 100%;
  49. height: 100%;
  50. .text {
  51. font-size: 22px;
  52. color: #1d9bf0;
  53. }
  54. }
  55. </style>