目录Object.defineProperty 那么在Vue中如何应用数据代理呢 总结Object.defineProperty defineProperty方法会直接在一个对象上定义一个新属性,或者
顺晟科技
2021-10-03 13:45:28
150
问题:el-raido内容改变后,怎么通知到el-radio-group的?
顺晟科技:
可以监听这里的 radio。如果涉及多个组件的话,可以使用vuex。至于内部怎么关联的,那是UI库的事情,不用关心。
然后可以直接设置(覆盖)
这样父组件执行(调用)foo.fun1() ,就会调用子组件的那个函数。
需求结构:
搞不懂你要做什么?千万别提我,我怕别人说我把你带偏了。
Vue.js - The Progressive JavaScript Framework
当前项目需要多个页面需要这样的功能,当前方案已经成功应用了,谢谢。
对于需求,抱歉,没有表达清晰:就是如:El-radio-group 和 el-radio 怎么关联的,我需要的是在自定义组件中,实现相互影响。
用组件的props呀。vue3,props都是proxy的。所以父组件可以这样
方案:给父类组件和子类组件关系记录结果到Vuex里面,并且都有的识别标识,通过监听改变做相互通讯。
利用vuex记录一对应多的关系:
我想问问是否有其他的方式相互通讯?el-radio-group和el-radio可能不是用vuex做相互通讯的结合部分吧?
同样道理,可以让子组件直接调用父组件的函数。其实有些UI库的组件就是这么用的。
感谢 [jyk0011]的回复,让我想到了一种方案。
子组件定义props,接收foo
v-model="radio"
感谢之前的回复。
子组件,不让改props的层属性,但是可以改第二层的,所以要加上 events,多加一层。
抱歉,我上面描述有错误:
v-model可以看成是语法糖 v-model
在内部为不同的输入元素使用不同的 property 并抛出不同的事件<input v-model='value' type="text"></input> 等同于 <input :value="value" @input="value= $event.target.value"></input>
也可以在组件上自定义model具体可以参考文档
watch监听:在【组件parentCustom】监听child的变化,如果有改变(对比init),做相应处理。(【组件childCustom】影响【组件parentCustom】)在【组件childCustom】监听parent的变化,如果有改变(对比init),做相应处理。(【组件parentCustom】影响【组件childCustom】)
我需要在一个vue页面里用到这种关系,内部中间夹着了其他的代码,简单代码结构如下:
Vue.js - The Progressive JavaScript Framework
注意,【组件parentCustom】 和 【组件childCustom】是slot关系,不是父类和子类组件关系。在【组件parentCustom】的slot中,有多个【组件childCustom】,还有一些不固定的代码。整体布局在同一个vue中。
不知道你的具体需求,监听数据变化用watch;如果是用的成熟的组件,不要想着去改,不如自己写一个
给父类组件和子类组件关系记录…
在childCustom进行一些处理后,怎么将结果通知到parentCustom里面,在进行其他的业务处理?
我想知道的是,有没有不借助vuex的方式,parentCustom 和 childCustom 能相互影响?
说明如下:在【组件parentCustom】的“里面”有很多【组件childCustom】,一个对应多个。相互影响:【组件parentCustom】里面的一些操作会影响【组件childCustom】,【组件childCustom】里面的一些操作会影响【组件parentCustom】。
09
2022-11
19
2022-10
30
2022-09
30
2022-09
23
2022-09
23
2022-09