jinlong8705 2021-12-10 14:52 采纳率: 88.9%
浏览 90
已结题

vue关于读取queryParams.days第一次都是零的原因,点击刷新才能以正常的时间搜索数据

代码如下


<template>
  <div v-if="flag" class="dashboard-editor-container">
    <el-card>
      <el-form :model="queryParams" ref="queryForm" :inline=!0 label-width="250px" size="small">
          <el-form-item label="显示尚未核销的手/账册 有效期小于" prop="days">
            <el-input-number v-model="queryParams.days" />  
          </el-form-item>
          <el-button type="primary" icon="el-icon-refresh" size="mini" @click="getList">刷新</el-button>
          <el-button type="primary" icon="el-icon-circle-check" size="mini" @click="saveDays">保存天数</el-button>
      </el-form>
    </el-card>
    <el-card style="margin-top: 10px">
      <el-row style="margin-top: 10px">
        <el-table :data="configList" stripe border
          @row-dblclick="handleDblclick">
          <el-table-column type="selection" width="55"> </el-table-column>
          <template v-for="(col,ck) in tableColumn">
            <el-table-column  :key="ck" v-if=col.isShow
              :label=col.label :prop=col.prop :width=col.width :type=col.type
              :align=col.align :fixed=col.fixed?col.fixed:false sortable="custom"
              :show-overflow-tooltip=col.showOverflowTooltip
              :formatter=col.formatter>
            </el-table-column>
          </template>
        </el-table>
        <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList"/>
      </el-row>
    </el-card>
    <detail ref="details" @goBack="goBack" />
  </div>
</template>

<script>
import detail from "./npts/eml/detail";
import { getwarningData, getDays, updateDeptDays } from "@/api/npts/eml";
import imgView from "./npts/eml/img/index";
import headView from "./npts/eml/head/index";
import exgView from "./npts/eml/exg/index";
import lossView from "./npts/eml/loss/index";
export default {
  name: "Index",
  components: {detail,headView,imgView,exgView,lossView,updateDeptDays,getDays},
  data() {
    return {
      queryParams: {
        days: "",
        pageNum: 1,
        pageSize: 10
      },
      // 遮罩层
      loading: true,
      // 选中数组
      ids: [],
      seqNo: "",
      seqNos: [],
      // 非单个禁用
      single: true,
      // 非多个禁用
      multiple: true,
      // 显示搜索条件
      showSearch: false,
      // 总条数
      total: 0,
      // 参数表格数据
      configList: [],
      // 弹出层标题
      title: "",
      // 是否显示弹出层
      open: false,
      flag: true,
      tableColumn:[
        {isShow:true,prop:"seqNo",label:"统一编号",width:170},
        {isShow:true,prop:"emlNo",label:"加工贸易手册编号",width:150},
        {isShow:true,prop:"statusName",label:"状态",width:120},
        {isShow:true,prop:"bizopEtpsno",label:"经营单位编码",width:150},
        {isShow:true,prop:"bizopEtpsNm",label:"经营单位名称",width:200},
        {isShow:true,prop:"rcvgdEtpsno",label:"加工单位编码",width:150},
        {isShow:true,prop:"rcvgdEtpsNm",label:"加工单位名称",width:200},
        {isShow:true,prop:"dclTypecdName",label:"申报类型",width:100},
        {isShow:true,prop:"impCtrtNo",label:"进口合同号",width:150},
        {isShow:true,prop:"inputTime",label:"录入日期",width:120},
        {isShow:true,prop:"validDate",label:"有效日期",width:120},
        {isShow:true,prop:"dclTime",label:"申报日期",width:120},
      ]
    };
  },
  created() {
    this.getList();
  },
  methods: {
    
    //刷新
    getList() {
      getwarningData(this.queryParams).then(response => {
        this.configList = response.rows;
        this.total = response.total;
        this.loading = false;
        this.getDeptDays();
      });
    },

    getDeptDays() {
      getDays().then(response => {
        this.queryParams.days = response.data;
      });
      // this.getList();
    },

    //保存天数
    saveDays() {
      updateDeptDays(this.queryParams.days).then(response => {
        if (response.code === 200) {
          this.msgSuccess("操作成功");
          this.getList();
        }
      });
    }
  }
};

</script>

<style lang="scss" scoped>
.dashboard-editor-container {
  padding: 32px;
  background-color: rgb(240, 242, 245);
  position: relative;
  height: 100vh;
  .chart-wrapper {
    background: #fff;
    padding: 16px 16px 0;
    margin-bottom: 32px;
  }
}
/deep/ .el-form-item__label {
  color: red;
}
@media (max-width: 1024px) {
  .chart-wrapper {
    padding: 8px;
  }
}
</style>

  • 写回答

4条回答 默认 最新

  • 雾里桃花 2021-12-10 15:26
    关注

    有可能是接口响应的太慢,导致数据还没有返回的时候你就点击了保存按钮

     getDeptDays() {
          getDays().then(response => {
            this.queryParams.days = response.data;
            console.log(this.queryParams.days) //在这里打印一下接收到的参数,看到控制台输出该参数后在点击保存
          });
          // this.getList();
        },
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 12月18日
  • 已采纳回答 12月10日
  • 创建了问题 12月10日

悬赏问题

  • ¥15 目详情-五一模拟赛详情页
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line