艺易修小程序24.08.21
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

140 lines
2.5 KiB

9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
  1. <template>
  2. <view class="login">
  3. <view class="logo">
  4. <image src="../../static/studentLogin/logo.png" mode="widthFix"></image>
  5. </view>
  6. <view class="title">
  7. 欢迎使用艺易修
  8. </view>
  9. <view @click="wxLogin" class="btn mt">
  10. <view>
  11. 微信授权登录
  12. </view>
  13. </view>
  14. <view @click="toRepairLogin" class="btn b2">
  15. 维修员登录
  16. </view>
  17. <view class="config">
  18. <uv-checkbox-group
  19. v-model="checkboxValue"
  20. shape="circle">
  21. <view class="content">
  22. <view
  23. style="display: flex;">
  24. <uv-checkbox
  25. size="30rpx"
  26. :name="1"
  27. v-model="agreement"
  28. ></uv-checkbox>
  29. 阅读并同意我们的<text @click="openConfigDetail('privacyAgreement')">服务协议与隐私条款</text>
  30. </view>
  31. <view class="">
  32. 以及<text @click="openConfigDetail('userAgreement')">个人信息保护指引</text>
  33. </view>
  34. </view>
  35. </uv-checkbox-group>
  36. </view>
  37. <configPopup ref="popup"></configPopup>
  38. </view>
  39. </template>
  40. <script>
  41. import configPopup from '../../components/config/configPopup.vue';
  42. export default {
  43. name : 'Login',
  44. data() {
  45. return {
  46. checkboxValue : [],
  47. agreement : true
  48. }
  49. },
  50. methods: {
  51. wxLogin(){
  52. this.$store.commit('login')
  53. },
  54. //打开应用配置
  55. openConfigDetail(key){
  56. this.$refs.popup.open(key)
  57. },
  58. //跳转维修员登录页面
  59. toRepairLogin(){
  60. uni.navigateTo({
  61. url: '/pages/login/repairLogin'
  62. })
  63. }
  64. }
  65. }
  66. </script>
  67. <style scoped lang="scss">
  68. .login{
  69. display: flex;
  70. justify-content: center;
  71. align-items: center;
  72. height: 80vh;
  73. flex-direction: column;
  74. position: relative;
  75. .logo{
  76. height: 150rpx;
  77. width: 150rpx;
  78. border-radius: 50%;
  79. image{
  80. width: 150rpx;
  81. height: 150rpx;
  82. }
  83. margin-bottom: 20rpx;
  84. }
  85. .title{
  86. position: relative;
  87. font-weight: 900;
  88. font-size: 45rpx;
  89. &::after{
  90. content: '';
  91. position: absolute;
  92. left: 0;
  93. top: 100%;
  94. display: block;
  95. height: 8rpx;
  96. width: 210rpx;
  97. background: linear-gradient(to right,#00aaff, #fff);
  98. }
  99. }
  100. .btn{
  101. width: 80%;
  102. height: 100rpx;
  103. background-color: #00aaff;
  104. color: #fff;
  105. display: flex;
  106. justify-content: center;
  107. align-items: center;
  108. margin: 20rpx 0;
  109. border-radius: 20rpx;
  110. }
  111. .b2{
  112. background-color: #87D0F6;
  113. color: #fff;
  114. }
  115. .mt{
  116. margin-top: 200rpx;
  117. }
  118. .config{
  119. position: absolute;
  120. bottom: 0;
  121. font-size: 22rpx;
  122. text-align: center;
  123. line-height: 40rpx;
  124. text{
  125. color: #00aaff;
  126. }
  127. }
  128. }
  129. </style>