账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    vue 页面保存的值,刷新之后有一个select不显示之前保存的值,哪里出的问题?
    37
    0

    再进入这个界面 select里面的值一直 不显示 但是接口数据显示已经返回了
    求教

    watch: {
          'form.discountId' (key,old) {
            this.discountschema.map(item => {
              if ( key === item.id){
                this.form.discountName = item.name;
                this.form.discountId = item.name;
              }
            });
          },
        },
    return {
            form: {
              id: null,
              name: null,
              rule: [],
              rule1: null,
              rule2: null,
              rule3: null,
              rule4: null,
              discountId:'',
              discountName:'',
              vipPrice: 2,
              discount: 2,
              discount2:2,
              discountValue: null,
              other: ''
            },
            discountschema:[],
    0
    打赏
    收藏
    点击回答
        全部回答
    • 共 0 条
    • Infatuatedwith 普通会员 1楼

      这个问题可能出现在Vue组件的刷新和选择数据的时候。这里有一些可能的原因和解决方案:

      1. 代码逻辑错误:你可能在mounted或beforeDestroy钩子函数中尝试改变组件的状态或属性,这会导致数据的丢失。在mounted钩子函数中,你可以在保存数据之前检查组件的状态是否已改变,如果是,可以尝试恢复数据。

      javascript mounted() { if (this.state.status !== 'success') { this.setState({ status: 'success' }); } }

      1. 缓存问题:浏览器的缓存可能会影响数据的刷新。你可以在刷新页面时清除浏览器缓存,或者在组件的数据请求失败时强制刷新页面。

      javascript this.$router.push({ path: '/refresh' });

      1. API请求问题:如果数据请求失败,Vue可能会忽略数据的更新。你可以在数据请求失败时检查是否保存了新的数据,如果有,可以尝试恢复旧的数据。

      ```javascript if (this.state.status !== 'success') { this.setState({ status: 'success' }); }

      this.$axios.get('/api/data') .then(response => { this.setState({ data: response.data }); }) .catch(error => { console.error(error); }); ```

      1. 数据更新频率问题:如果你的数据更新频率很低,那么Vue可能会尝试更新数据的时间间隔,导致数据的丢失。你可以尝试增加数据的更新频率,或者使用定时器来更新数据。

      javascript this.$store.dispatch('updateData');

      以上是一些可能的原因和解决方案,具体的解决方法需要根据你的代码来判断。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部