美文网首页前端Vue专辑Vue.js专区
vue两个组件间值的传递或修改方式

vue两个组件间值的传递或修改方式

作者: a333661d6d6e | 来源:发表于2018-11-21 17:10 被阅读3次

    本文主要介绍了vue两个组件间值的传递或修改的实现代码,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

    1、可以用公共的父组件来实现;
    2、可以在store.js里面在设置公共变量;
    3、也可以用本地存储localStorage.setItem()和localStorage.getItem(),通过修改本地存储的值和获取修改后的值来实现;
    4、就是父子组件间的值的传递与修改props,这里需要注意的是子组件里面不 能直接修改props里面接受的值,需要定义一个中间变量来接受props里的值并修改,通过emit即this.emit('checkDisplay',this.displayChild);来传给父组件
    5、也可以通过路由来传值query,params,
    a、 //跳转页面并传值

    this.$router.push({path:'/index',query:{name:'haha'}}) 
    //获取传递过来的数据
    this.$route.query.name
    

    b、 或者是 //跳转页面并传值
    要记住的是params只能用name跳转,如果用path来传值则传不过去 ,而且这种传值页面刷新后所传值将清空

    this.$router.push({name:'index',params:{name:'nana'}})
      //获取传递过来的数据
    //欢迎加入全栈开发交流圈一起学习交流:864305860
      this.$route.params.name
    

    c、也可以直接传值

    this.$router.push('/index/'+item.name)  //跳转页面并传值,不过这种传值前提需在路由里面在路径后面添加“/路径/:参数名”
    this.$route.params.参数名            //获取数据
    //欢迎加入全栈开发交流圈一起学习交流:864305860
    

    但是这种方式会在地址栏显示数据,不安全
    6、路径地址传值,params、query是什么?
    params:/router1/:id ,/router1/123,/router1/789 ,这里的id叫做params,及上面方法c
    query:/router1?id=123 ,/router1?id=456 ,这里的id叫做query。和上面方法a同理
    当你使用params方法传参的时候,要在路由后面加参数名,并且传参的时候,参数名要跟路由后面设置的参数名对应。使用query方法,就没有这种限制,直接在跳转里面用就可以。

    结语

    感谢您的观看,如有不足之处,欢迎批评指正。

    本次给大家推荐一个免费的学习群,里面概括移动应用网站开发,css,html,webpack,vue node angular以及面试资源等。
    对web开发技术感兴趣的同学,欢迎加入Q群:864305860,不管你是小白还是大牛我都欢迎,还有大牛整理的一套高效率学习路线和教程与您免费分享,同时每天更新视频资料。
    最后,祝大家早日学有所成,拿到满意offer,快速升职加薪,走上人生巅峰。

    相关文章

      网友评论

        本文标题:vue两个组件间值的传递或修改方式

        本文链接:https://www.haomeiwen.com/subject/orrfqqtx.html