Step1.vue 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <template>
  2. <div>
  3. <el-form ref="form" :model="form" :rules="rules" label-width="120px">
  4. <el-form-item label-width="0">
  5. <el-alert show-icon>
  6. 请务必仔细填写并核对
  7. </el-alert>
  8. </el-form-item>
  9. <el-form-item label="付款账户" prop="payAccount">
  10. <el-input v-model="form.payAccount"></el-input>
  11. </el-form-item>
  12. <el-form-item label="收款账户" prop="gatheringAccount">
  13. <el-input v-model="form.gatheringAccount"></el-input>
  14. </el-form-item>
  15. <el-form-item label="收款人姓名" prop="gatheringName">
  16. <el-input v-model="form.gatheringName"></el-input>
  17. </el-form-item>
  18. <el-form-item label="转账金额" prop="price">
  19. <el-input v-model="form.price"></el-input>
  20. </el-form-item>
  21. </el-form>
  22. <div class="pay-button-group">
  23. <el-button type="primary" @click="handleSubmit">下一步</el-button>
  24. </div>
  25. </div>
  26. </template>
  27. <script>
  28. export default {
  29. data() {
  30. return {
  31. form: {
  32. payAccount: "XXXXXXXXXXXXXXXX",
  33. gatheringAccount: "1204505056@qq.com",
  34. gatheringName: "chuzhixin",
  35. price: "100",
  36. },
  37. rules: {
  38. payAccount: [
  39. { required: true, message: "请选择付款账户", trigger: "blur" },
  40. ],
  41. gatheringAccount: [
  42. { required: true, message: "请输入收款账户", trigger: "blur" },
  43. { type: "email", message: "账户名应为邮箱格式", trigger: "blur" },
  44. ],
  45. gatheringName: [
  46. { required: true, message: "请输入收款人姓名", trigger: "blur" },
  47. ],
  48. price: [
  49. { required: true, message: "请输入转账金额", trigger: "blur" },
  50. { pattern: /^(\d+)((?:\.\d+)?)$/, message: "请输入合法金额数字" },
  51. ],
  52. },
  53. };
  54. },
  55. methods: {
  56. handleSubmit() {
  57. this.$refs.form.validate((valid) => {
  58. if (valid) {
  59. this.$emit("change-step", 2, this.form);
  60. }
  61. });
  62. },
  63. },
  64. };
  65. </script>
  66. <style lang="scss" scoped>
  67. .pay-button-group {
  68. display: block;
  69. margin: 20px auto;
  70. text-align: center;
  71. }
  72. </style>