dfssdfdsdfd 2022-06-26 13:05 采纳率: 97.6%
浏览 22
已结题

关于前端vue的一些问题

怎么实现在新增收获信息后点击返回到购物信息并且刷新页面


<template>
    <div style="width: 600px;margin: 0 auto">
      <h1 align="center">新增收货信息</h1>
      <el-form
:model="ruleForm"
status-icon
:rules="rules"
ref="ruleForm"
label-width="100px"
class="demo-ruleForm">
        <el-form-item label="收货人" prop="receiverName">
          <el-input type="text" v-model="ruleForm.receiverName" autocomplete="off"></el-input>
        </el-form-item>
        <el-form-item label="手机" prop="receiverPhone">
          <el-input type="text" v-model="ruleForm.receiverPhone" autocomplete="off"></el-input>
        </el-form-item>
        <el-form-item label="详细地址" prop="receiverAddress">
          <el-input type="text" v-model="ruleForm.receiverAddress" autocomplete="off"></el-input>
        </el-form-item>
        <el-form-item>
          <el-button type="primary" @click="submitForm('ruleForm')">提交</el-button>
          <el-button @click="resetForm('ruleForm')">重置</el-button>
          <el-button @click="gotolink" class="btn btn-success">返回购物车</el-button>
        </el-form-item>
      </el-form>
    </div>
</template>

<script>
  import {axios} from '../../util/request'

  export default {
    name: 'Address',
    data () {
      const checkReceiver = (rule, value, callback) => {
        if (!value) {
          return callback(new Error('收货人不能为空'));
        }
        callback()
      };
      const checkPhone = (rule, value, callback) => {
        const phone = /^1[345678]\d{9}$/
        if (!value) {
          return callback(new Error('手机不能为空'));
        } else {
          if (phone.test(value)) {
            callback()
          } else {
            callback(new Error('不合规的手机号码'))
          }
        }
      };
      const checkAddress = (rule, value, callback) => {
        if (!value) {
          return callback(new Error('地址不能为空'));
        }
        callback()
      };
      return {
        ruleForm: {
          receiverName: '',
          receiverPhone: '',
          receiverAddress: ''
        },
        rules: {
          receiverName: [
            { validator: checkReceiver, trigger: 'blur' }
          ],
          receiverPhone: [
            { validator: checkPhone, trigger: 'blur' }
          ],
          receiverAddress: [
            { validator: checkAddress, trigger: 'blur' }
          ]
        }
      };
    },
    methods: {
      submitForm (formName) {
        this.$refs[formName].validate((valid) => {
          if (valid) {
            axios.post('/receiver/add', this.ruleForm).then(data => {
              if (data.rs) {
                this.$message({
                  message: '添加成功!!!',
                  type: 'success'
                })
              }
            })
          } else {
            console.log('error submit!!');
            return false;
          }
        });
      },
      resetForm (formName) {
        this.$refs[formName].resetFields();
      },
     gotolink () {
        this.$router.go(-1)
      }
    }
  }
</script>

<style scoped>

</style>

img

img

  • 写回答

2条回答 默认 最新

  • 关注

    点击返回的时候重新请求一下接口

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 7月6日
  • 已采纳回答 6月28日
  • 创建了问题 6月26日

悬赏问题

  • ¥15 echarts动画效果失效的问题。官网下载的例子。
  • ¥60 许可证msc licensing软件报错显示已有相同版本软件,但是下一步显示无法读取日志目录。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥30 关于<main>标签页面跳转的问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加