前端 JS 经典:单向数据流

前言:Vue 的父子组件通信就遵循单向数据流的原则,父组件传给子组件的参数,子组件只能使用,不能修改。

1. 核心概念

数据的拥有者才能修改数据。因为当数据出了问题后只需要去找数据的拥有者就可以了。如果在其他地方也修改这个数据,将来这个数据出了问题,我们要到处去找,不便于维护。

当需要在子组件中修改父组件中的数据时,不能直接修改,我们需要触发父组件的事件,让父组件去修改数据。保持数据单向原则。

2. 父子组件通信

在 Vue 中,父组件通过 props 向子组件传递数据,子组件通过 $emit 触发事件并向父组件通信

3. 祖先组件通信

在 Vue 中,祖先组件和子孙组件通信时,可以通过 provide/inject 进行通信。

父组件中通过 provide 来提供变量,然后在子组件中通过 inject 来注入变量,不论子组件嵌套有多深,只要调用了 inject 就可以注入 provide 中的数据

4. 兄弟组件通信

在 Vue 中,创建一个全局的 Vue 实例来充当事件总线,所有组件都可以监听和触发事件。或者使用状态管理工具 Vuex、Pinia 等。

相关推荐
m0_748233648 小时前
C++开发中的常用设计模式:深入解析与应用场景
javascript·c++·设计模式
fruge8 小时前
TypeScript 基础类型与接口详解
javascript·ubuntu·typescript
今天没有盐8 小时前
💕CSS 基础入门指南💕:选择器与文本样式
前端·html·响应式设计
AAA阿giao9 小时前
JavaScript 中的变量声明:var、let 与 const 深度解析
javascript·笔记
云枫晖9 小时前
Webpack系列-Entry入口
前端·webpack
mustfeng9 小时前
VCS & Verdi 2023安装
java·服务器·前端
Mintopia9 小时前
🌐 数据合规框架下的 WebAIGC 训练数据处理技术规范
前端·javascript·aigc
骥龙9 小时前
2.6、Web漏洞挖掘实战(下):XSS、文件上传与逻辑漏洞深度解析
前端·xss
用户66006766853910 小时前
从 var 到 let/const:JavaScript 变量声明的进化之路
javascript
用户4338453756910 小时前
Promise深度解析,以及简易版的手写实现
前端