login.vue 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <template>
  2. <view class="login">
  3. <image src="../../static/logo.png" mode="" class="pictures"></image>
  4. <view class="form">
  5. <van-field label="用户名" :value="userName" placeholder="请输入用户名" @change="getName" />
  6. <van-field label="密码" type="password" :value="passWord" placeholder="请输入密码" @change="getWord" />
  7. <view class="btn">
  8. <van-button type="danger" @click.native="goHome">登录</van-button>
  9. </view>
  10. </view>
  11. <div class="register">
  12. <navigator url="/pages/register/register">没有账号去注册</navigator>
  13. </div>
  14. </view>
  15. </template>
  16. <script>
  17. import {
  18. toLogin
  19. } from '@/api/user.js';
  20. import {
  21. encrypto
  22. } from '@/utils/cryptojs.js';
  23. export default {
  24. data() {
  25. return {
  26. userName: '',
  27. passWord: ''
  28. }
  29. },
  30. methods: {
  31. getName(event) {
  32. this.userName = event.detail;
  33. },
  34. getWord(event) {
  35. this.passWord = event.detail;
  36. },
  37. goHome() {
  38. console.log(this.userName, this.passWord)
  39. toLogin({
  40. userName: this.userName,
  41. passWord: encrypto(this.passWord)
  42. }).then(res => {
  43. if(res.code = '00000') {
  44. uni.setStorageSync("token",res.data.accessToken)
  45. uni.switchTab({
  46. url:"/pages/home/home"
  47. })
  48. }
  49. }).catch(err => {
  50. console.log(err, '失败')
  51. })
  52. }
  53. }
  54. }
  55. </script>
  56. <style scoped lang="scss">
  57. .login {
  58. width: 100%;
  59. display: flex;
  60. justify-content: center;
  61. flex-direction: column;
  62. align-items: center;
  63. .pictures {
  64. width: 300rpx;
  65. height: 300rpx;
  66. margin: 200rpx 0 100rpx;
  67. }
  68. ::v-deep .van-button--normal {
  69. width: 100%;
  70. margin: 50rpx 0;
  71. }
  72. }
  73. </style>