SignUpBaseInfo.vue 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. <template>
  2. <div class="signupAccount">
  3. <m-header />
  4. <m-step :number="2" style="margin-top: .12rem" />
  5. <van-form ref="form" :show-error="false" validate-first @submit="onSubmit" @failed="onFailed">
  6. <div class="title">基本信息</div>
  7. <van-field v-model="form.phone" name="phone" label="身份证号" placeholder="请输入身份证号" :rules="[{ pattern: patternPhone, message: '身份证号输入有误' }]" />
  8. <van-field v-model="form.phone" name="phone" label="姓名" placeholder="请输入姓名" :rules="[{ required: true, message: '姓名输入有误' }]" />
  9. <van-field name="radio" label="性别">
  10. <template #input>
  11. <van-radio-group v-model="form.sex" direction="horizontal">
  12. <van-radio :name="1">男</van-radio>
  13. <van-radio :name="0">女</van-radio>
  14. </van-radio-group>
  15. </template>
  16. </van-field>
  17. <van-field readonly clickable name="birthday" v-model="form.birthday" label="生日" placeholder="请选择" @click="birthdayStatus = true" is-link />
  18. <van-field readonly clickable name="nation" v-model="form.nation" label="民族" placeholder="请选择" is-link />
  19. <div class="title">证件照上传</div>
  20. <m-button class="stepBtn" text="下一步" native-type="submit" />
  21. </van-form>
  22. <van-popup v-model="birthdayStatus" position="bottom">
  23. <van-datetime-picker
  24. type="date"
  25. @cancel="birthdayStatus = false"/>
  26. <!-- @confirm="onConfirm" -->
  27. </van-popup>
  28. </div>
  29. </template>
  30. <script>
  31. import MHeader from '@/components/MHeader'
  32. import MStep from '@/components/MStep'
  33. import MButton from '@/components/MButton'
  34. // import { browser } from '@/common/common'
  35. export default {
  36. name: 'signupAccount',
  37. components: { MHeader, MStep, MButton },
  38. data () {
  39. return {
  40. patternPhone: /^1(3|4|5|6|7|8|9)\d{9}$/,
  41. patternPwd: /^[0-9A-Za-z]{6,16}$/,
  42. birthdayStatus: false,
  43. form: {
  44. phone: null,
  45. sex: 1,
  46. birthday: null,
  47. nation: null
  48. },
  49. }
  50. },
  51. mounted() {
  52. // 插入token
  53. // let params = this.$route.query
  54. // if(params.Authorization) {
  55. // localStorage.setItem('Authorization', decodeURI(params.Authorization))
  56. // localStorage.setItem('userInfo', decodeURI(params.Authorization))
  57. // }
  58. },
  59. methods: {
  60. onSubmit() {
  61. // console.log('submit', values)
  62. },
  63. onFailed() {
  64. // console.log('failed', errorInfo);
  65. // console.log(this.$refs['form'].scrollToField(errorInfo.errors[0].name))
  66. // this.$refs['form'].scrollToField(errorInfo.errors[0].name, false)
  67. }
  68. }
  69. }
  70. </script>
  71. <style lang="less" scoped>
  72. @import url("../../assets/commonLess/variable.less");
  73. .signupAccount {
  74. height: 100vh;
  75. overflow-y: auto;
  76. overflow-x: hidden;
  77. background-color: #F3F4F8;
  78. .title {
  79. font-size: .16rem;
  80. color: #999999;
  81. padding: .12rem .16rem;
  82. }
  83. /deep/.van-cell {
  84. padding: .13rem .16rem;
  85. }
  86. /deep/.van-field__label {
  87. font-size: .17rem;
  88. color: #333;
  89. width: 1.15rem;
  90. }
  91. /deep/.van-field__body {
  92. font-size: .16rem
  93. }
  94. .codeText {
  95. font-size: .16rem;
  96. color: #2DC7AA;
  97. }
  98. }
  99. .stepBtn {
  100. margin-top: .35rem;
  101. }
  102. </style>