您提供的代码和问题描述中,主要问题可能是以下两个:

  1. watch 监听函数中的参数没有正确传递给 voucherGroupId 函数。请确保在调用 voucherGroupId 函数时,参数 newVoldV 被正确传递。您可以使用 console.log 在调用 voucherGroupId 函数时检查传递的参数是否正确。

  2. getVoucherGroup 接口调用时,voucherGroupId 参数的值不正确。根据您提供的接口地址和错误信息,看起来 voucherGroupId 参数的值是一个对象 ([object Object]),而不是一个有效的值。请检查调用 getVoucherGroup 接口时,voucherGroupId 参数的值是否正确传递。可以使用 console.log 或调试工具来检查参数值。

解决方法:

  1. 仔细检查 watch 监听函数中传递给 voucherGroupId 函数的参数,确保它们是正确的值。

  2. 检查 getVoucherGroup 接口调用时,voucherGroupId 参数的值是否正确。确保它是一个有效的字符串或数字,而不是一个对象。

示例代码:

watch: {
  'voucherGroupId': (newV, oldV) => {
    console.log('newV:', newV); // 检查新值
    console.log('oldV:', oldV); // 检查旧值
    if (newV) {
      this.queryParams.voucherGroupId = newV;
      console.log('current voucherGroupId:', this.queryParams.voucherGroupId);
      this.getList();
    }
  }
},

getList() {
  if (this.queryParams.voucherGroupId !== null) {
    let param = {
      voucherGroupId: this.queryParams.voucherGroupId
    };
    getVoucherGroup(param).then((res) => {
      console.log('res:', res); // 检查接口返回结果
    });
  } else {
    console.log('vouchergroupid is null');
  }
}

其他可能的原因:

  • 接口地址错误,请仔细检查接口地址是否正确。
  • 接口权限问题,请确保您有调用该接口的权限。

如果问题仍然存在,请提供更多的代码和错误信息,以便我们能够更准确地帮助您解决问题。

Vue.js watch 监听器传递参数到方法并调用接口获取数据问题解决

原文地址: https://www.cveoy.top/t/topic/qDgt 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录