mardan

226 阅读1分钟

BUG

1. 快速地多次点击保存,保存了多次(发了多次请求)

点击按钮后触发的函数里第一个执行的代码把点击按钮禁用,最后一个执行的代码把按钮释放

2. 表单检验,输入不合法的数据点击确定时会出现提示语,关闭弹窗后再次打开时还是会显示提示语(内容已经清空了)

this.$refs.dialogForm.resetFields() //调用它自己的方法清空表单
如果单使用给变量赋值空字符串来清空的话会引发以上的bug

3. 添加定位,分页了的列表,要求在第五页点开一个详情(切到别的页面),点击返回后回到第五页而不是第一页

知识点:VueX , Vue生命周期 每次进入详情页时使用vuex来保存当前的页数,每次进入列表页时使用vuex里缓存的页数来请求列表数据,每次从列表页跳到别的页面时判断当前路由是否为详情页的路由,如果是则刷新vuex中的页数为跳转时列表页的页数,如果不是详情页的路由则vuex中的页数初始化为1

//每次进入详情页时使用vuex来保存当前的页数
handleJumpToDetail(id) {
      this.$store.dispatch('user/setpage', this.tableData.currentPage)
      this.$router.push({
        path: '/content/dynamicdetail?id=' + id
      })
    },
 created() {
    // 每次进入列表页时使用vuex里缓存的页数为页数来请求列表数据
    this.tableData.currentPage = this.$store.getters.dynamicCurrentPage
    this.handleGetGroupList() 
    this.fetchList() // 请求列表数据
  },
//每次从列表页跳到别的页面时判断当前路由是否为详情页的路由
destroyed() {
    // 0.5s 后判断用户是否进了详情页,如果不是详情页就刷新动态管理当前页面数
    setTimeout(() => {
      if (this.$route.name !== 'DynamicDetail') {
        this.$store.dispatch('user/setpage', 1)
      }
    }, 500)
  },