javascript - Vuejs 如何传递computed的字段到平级组件?
阿神
阿神 2017-04-11 12:10:14
[JavaScript讨论组]

如题:

    
        
        
        
    

a组件里面有一个computed的属性:val,如何将val传递给组件b?

已经尝试事件传递,貌似不行

a组件内部:

    computed:{
        val(){
            //计算得到newVal值
            this.$dispatch('val',newVal);
        }
    }
阿神
阿神

闭关修行中......

全部回复(2)
阿神

首先可以把computed拿到父里面 通过prop传到A 这样去操作父 进而驱动属性的变化

还有一个笨法 通过vm.$parent.$refs找到B

最优雅的使用vuex 思路都是差不多通过全局去控制

事件的话不建议使用

PHP中文网

事件的话只能把父组件当一个中介来代理事件,子往上传父再往下传,但这样做着做着就乱了,这也是vuex出现的原因。

如果逻辑不复杂,可以来回穿或者父直接用refs来取值,如果逻辑复杂,就要用vuex了。

vuex就是出现一个独立的store的概念,只通过action模块可以更改store里的数据。store本身存放着各个模块共享的数据,各个模块再通过action来执行相应的操作,这可以去看一下。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号