vue组件通信, methods、computed和watch的

2022-03-14  本文已影响0人  千杯不倒王尧

vue组件通信?

父传子:父组件在子组件标签上自定义一个属性,绑定要传递的值,子组件通过props来接收,props可以是一个数组,也可以是一个对象,如果父组件没有传递值,子组件可以在props中用default来设置默认值。

子传父:子组件通过this.$emit('自定义事件','要传递的值')传递数据,父组件在子组件标签上也定义一个方法监听该自定义事件,在这个方法中接收传递过来的数据。

非父子组件传值:通过中央时间总线,也称为eventBus,新建一个js文件,在这个js文件中导入一个空的vue实例,然后导出,通过实例对象调用$emit方法来传值,on方法来接收值

methods、computed和watch的区别?

methods:定义方法,定义的方法不调用不会执行,不具有缓存性。

computed:计算属性,依赖于属性值的变化,属性值变化会触发computed里定义的方法,具有缓存性。

watch:监听属性,监听数据的变化会触发执行函数,不具有缓存性。

上一篇 下一篇

猜你喜欢

热点阅读