当前位置: 首页 > wzjs >正文

辽宁省城乡建设厅官方网站深圳博纳网站建设

辽宁省城乡建设厅官方网站,深圳博纳网站建设,wordpress安装显示404,项目推广跨组件通讯图 Props&#xff08;父 → 子&#xff09; 本质&#xff1a;父组件通过属性向子组件传递数据。 特点&#xff1a;单向数据流&#xff0c;子组件不能直接修改 props。 示例&#xff1a; <!-- 父组件 --> <Child :title"parentTitle" /><…

跨组件通讯图
在这里插入图片描述

Props(父 → 子)

本质:父组件通过属性向子组件传递数据。
特点:单向数据流,子组件不能直接修改 props。
示例:

<!-- 父组件 -->
<Child :title="parentTitle" /><!-- 子组件 -->
<script>
export default {props: ['title'] // 接收父组件数据
}
</script>

$emit + v-on(子 → 父)

本质:子组件通过事件向父组件传递数据。
示例:

<!-- 子组件 -->
<button @click="$emit('update', newValue)">提交</button><!-- 父组件 -->
<Child @update="handleUpdate" />

provide / inject(依赖注入)

本质:祖先组件提供数据,后代组件注入使用。
特点:适合深层嵌套,但数据流向不透明。
示例:

// 祖先组件
export default {provide() {return { theme: 'dark' }; // 提供数据}
}// 后代组件
export default {inject: ['theme'] // 注入数据
}

任意组件通信(全局状态)

Vuex 是 Vue 官方提供的状态管理库,适用于复杂应用的全局状态管理。它通过一个全局的 store 来管理应用的状态,允许跨组件共享和修改数据。

API官网

核心概念:

  • state:存储数据。
  • mutations:同步修改数据。
  • actions:异步操作。
  • getters:计算属性。

安装

npm install vuex@3 --save

创建 Store

// store.js
import { createStore } from 'vuex';export default createStore({state: {globalMessage: 'Hello from Vuex'},mutations: {updateMessage(state, newMessage) {state.globalMessage = newMessage;}},actions: {updateMessage({ commit }, newMessage) {commit('updateMessage', newMessage);}},getters: {globalMessage: (state) => state.globalMessage}
});

在主应用中引入 Store:

// main.js
import { createApp } from 'vue';
import App from './App.vue';
import store from './store';createApp(App).use(store).mount('#app');

在组件中使用:

// 组件中
this.$store.dispatch('updateMessage', 'New Message');
console.log(this.$store.getters.globalMessage);

Pinia 是 Vue 3 推荐的状态管理库,是 Vuex 的替代品,提供了更好的类型支持和更简

安装

npm install pinia

创建 Store

// store.js
import { defineStore } from 'pinia';export const useMessageStore = defineStore('message', {state: () => ({message: 'Hello from Pinia'}),actions: {updateMessage(newMessage) {this.message = newMessage;}}
});

在主应用中引入 Store:

// main.js
import { createApp } from 'vue';
import App from './App.vue';
import { createPinia } from 'pinia';const app = createApp(App);
app.use(createPinia());
app.mount('#app');

在组件中使用:

// 组件中
import { useMessageStore } from './store';const store = useMessageStore();
store.updateMessage('New Message');
console.log(store.message);
http://www.dtcms.com/wzjs/790175.html

相关文章:

  • 兰州网站开发企业会计网站建设意义
  • 网上书城网站建设目的理财网站如何做推广
  • 做网站配置服务器京润珍珠企业网站优化
  • 鲜花网站建设的项目介绍福州网站建站
  • 怎么给网站加外链网站建设对教育解决方案
  • 佛山网站建设模板建站新网域名注册步骤
  • 手机上怎么做能打开的网站海外域名网站
  • 电商网站建设合同赣州市建设局
  • 网站排版设布局wordpress档案插件
  • wordpress怎么搜索网站网页游戏排行大全
  • 郑州网站建设 个人工作室wordpress获取当前分类id
  • 云南省建设注册考试中心网站百度网站建设流程
  • 制作网站价格站酷网官网
  • 优化网站步骤二手交易网站开发
  • 做公司网站解析上海十大好厂
  • 寄生虫网站排名代做怎么上传文章网站
  • 北京网站建设技术部服务器维护通知
  • 网站建设有些什么流程长沙网站开发哪家好
  • 怎么建设网站网站网站怎样制作 优帮云
  • 做养殖推广什么网站好河南开展涉网暴力专项举报工作
  • 直接用源码做网站盗版吗58徐州网站建设
  • 响应式网站导航网站建设优化开发公司哪家好
  • 网站建设与管理学校如何做好品牌网站建设
  • 上海网站建设企业名录网站 入站规则 设置
  • 网站留言板模板免费ppt模板下载网站入口
  • 嘉兴网站设计999 999网站构建工具
  • 建设网站申请网络推广专员岗位要求
  • 用wordpress建站学什么高端企业网站制作
  • wordpress 改网站域名手机网站建设 移商动力
  • 做网站公司昆明HTML网站建设课程