当前位置:网站首页>单项数据流之子组件修改父组件的值

单项数据流之子组件修改父组件的值

2022-06-29 13:25:00 YingUser

一般情况下,父传子,在子组件中是不能够修改父组件的值的,修改就回报错,但是有时候有想修改,那么怎么办呢?经过我不写的努力,终于找到解决办法了、、、、

**** 父组件 ***

这是我的父组件传了一个布尔值,
<scrollToTop :isFirstPage="isFirstPage" />


data() {
    return {
      isFirstPage:false,
    };
  },




***子组件***

<template>
  <div class="ScrollToTop_components" v-if="isFirstPage">
    <img @click="scrollToTop" class="icon" src="../../../assets/images/Result_to_top_icon.png" alt />
  </div>
  <div class="topcontrol_first" title="返回顶部" @click="scrollToTop" v-else>
    <div class="topcontrol_two">
      <div class="topcontrol_last"></div>
    </div>
  </div>
</template>

// 接收 
 props: {
   
    isFirstPage: {
      type: Boolean,
      default: true,
    },
  },
 data: function () {
    return { previewProps: "" }; //因为在子组件要修改他的值,所以呢,我就用一个变量保存起来,这样修改就不会报错啦
  },


 scroll() {
      window.addEventListener("scroll", () => {
        const scrollTop = document.getElementsByTagName("html")[0].scrollTop;
        if (scrollTop > 0) {
          this.previewProps = false;
        } else {
          this.previewProps = true;
        }
      });
    },

这里只是布尔值,至于其他数据行不行需要验证,到时候会补充,谢谢

原网站

版权声明
本文为[YingUser]所创,转载请带上原文链接,感谢
https://blog.csdn.net/YingUser/article/details/125450627

随机推荐