login.vue 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <template>
  2. <div class="logins">
  3. <br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
  4. <div class="avsd">门点拜访登录</div>
  5. <br /><br />
  6. <br /><br />
  7. <van-field v-model="name" label="账号" placeholder="请输入账号" />
  8. <br /><br /><br /><br />
  9. <van-button type="info" size="small" plain class="Btn100" @click="login" style="margin: 0 auto"
  10. >登录</van-button
  11. >
  12. </div>
  13. </template>
  14. <script>
  15. import store from '@/store';
  16. export default {
  17. name: 'login',
  18. data() {
  19. return {
  20. name: '',
  21. };
  22. },
  23. methods: {
  24. login() {
  25. localStorage.clear();
  26. if (this.name.trim() != '') {
  27. store.commit('SET_USER_INFO', null);
  28. store.dispatch('setDeviceOutsidePage', true);
  29. // 当前设备:PC/mobile
  30. let isDevice = window.navigator.userAgent.match(
  31. /(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i
  32. );
  33. localStorage.setItem('isDevice', !isDevice ? 'PC' : 'mobile');
  34. localStorage.setItem('loginName', this.name);
  35. localStorage.removeItem('loginType');
  36. this.$router.push('/');
  37. } else {
  38. this.$toast('账号不能为空');
  39. }
  40. },
  41. },
  42. };
  43. </script>
  44. <style scoped>
  45. .logins {
  46. padding: 10px;
  47. }
  48. .Btn100 {
  49. margin: 0 auto 10px;
  50. display: block;
  51. width: 100%;
  52. border-radius: 5px;
  53. color: #fff !important;
  54. background-color: #0057ba;
  55. border: 1px solid #0057ba;
  56. height: 44px;
  57. font-size: 16px;
  58. }
  59. .avsd {
  60. margin: 0 auto;
  61. width: 112px;
  62. font-size: 18px;
  63. color: #0057ba;
  64. animation: jump 3s ease infinite;
  65. }
  66. @keyframes jump {
  67. 0% {
  68. transform: translateY(0) scale(1, 1);
  69. }
  70. /* 中间状态图片位移并且拉伸 */
  71. 50% {
  72. transform: translateY(-20px) scale(0.97, 1.03);
  73. }
  74. 100% {
  75. transform: translateY(0) scale(1, 1);
  76. }
  77. }
  78. </style>