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

京东商城网站建设简单的ui界面制作

京东商城网站建设,简单的ui界面制作,长沙建设教育网官网,网站排名应该怎么做一、通信方式 Props 和 Events:通过父组件传递 props 给子组件,子组件使用 $emit 发送事件到父组件。Event Bus:使用一个中央事件总线来跨组件通信。Vuex:使用 Vuex 进行全局状态管理,以便在任何组件间共享状态。Prov…

一、通信方式

  • Props 和 Events:通过父组件传递 props 给子组件,子组件使用 $emit 发送事件到父组件。
  • Event Bus:使用一个中央事件总线来跨组件通信。
  • Vuex:使用 Vuex 进行全局状态管理,以便在任何组件间共享状态。
  • Provide / Inject:祖先组件使用 provide 传递数据,后代组件通过 inject 接收数据。
  • $refs:父组件通过 ref 获取子组件实例,直接调用其方法或访问属性。
  • Scoped Slots:使用插槽在父组件中传递数据到子组件,允许子组件根据传递的数据进行渲染。

二、应用举例 

1、Props 和 Events: 

        父组件 (Parent.vue

<template><Child :message="parentMessage" @update="handleUpdate" />
</template>
<script>
export default {data() {return { parentMessage: 'Hello from parent' };},methods: {handleUpdate(newMessage) {this.parentMessage = newMessage;}}
}
</script>

        子组件 (Child.vue

<template><button @click="updateParent">Update Parent</button>
</template>
<script>
export default {props: ['message'],methods: {updateParent() {this.$emit('update', 'Hello from child');}}
}
</script>

2、Event Bus: 

        事件总线 (eventBus.js

import Vue from 'vue';
export const EventBus = new Vue();

        发送消息 (ComponentA.vue

<template><button @click="sendMessage">Send Message</button>
</template>
<script>
import { EventBus } from './eventBus';
export default {methods: {sendMessage() {EventBus.$emit('message', 'Hello from Component A');}}
}
</script>

        接收消息 (ComponentB.vue

<template><p>{{ receivedMessage }}</p>
</template>
<script>
import { EventBus } from './eventBus';
export default {data() {return { receivedMessage: '' };},created() {EventBus.$on('message', (message) => {this.receivedMessage = message;});}
}
</script>

3、Vuex: 

         Vuex Store (store.js)

import Vue from 'vue';
import Vuex from 'vuex';Vue.use(Vuex);export default new Vuex.Store({state: {message: 'Hello from Vuex'},mutations: {setMessage(state, newMessage) {state.message = newMessage;}}
});

        更新消息 (ComponentA.vue

<template><button @click="updateMessage">Update Message</button>
</template>
<script>
import { mapMutations } from 'vuex';
export default {methods: {...mapMutations(['setMessage']),updateMessage() {this.setMessage('Hello from Component A');}}
}
</script>

        显示消息 (ComponentB.vue

<template><p>{{ message }}</p>
</template>
<script>
import { mapState } from 'vuex';
export default {computed: {...mapState(['message'])}
}
</script>

4、Provide / Inject: 

        提供数据 (Ancestor.vue

<template><Descendant />
</template>
<script>
export default {provide() {return {message: 'Hello from ancestor'};}
}
</script>

        注入数据 (Descendant.vue

<template><p>{{ message }}</p>
</template>
<script>
export default {inject: ['message']
}
</script>

5、$refs: 

        父组件 (Parent.vue)         

<template><Child ref="childComponent" /><button @click="callChildMethod">Call Child Method</button>
</template>
<script>
import Child from './Child.vue';
export default {components: { Child },methods: {callChildMethod() {this.$refs.childComponent.someMethod();}}
}
</script>

         子组件 (Child.vue)

<template><p>Child Component</p>
</template>
<script>
export default {methods: {someMethod() {console.log('Method in child called!');}}
}
</script>

6、Scoped Slots: 

        父组件 (Parent.vue

<template><Child><template v-slot:default="slotProps"><p>{{ slotProps.message }}</p></template></Child>
</template>
<script>
import Child from './Child.vue';
export default {components: { Child }
}
</script>

         子组件 (Child.vue)

<template><slot :message="'Hello from child'"></slot>
</template>
<script>
export default {}
</script>
http://www.yayakq.cn/news/670698/

相关文章:

  • 厦门网站建设公网站费用计入什么科目
  • 门户网站整改报告生肖竞猜网站建设
  • 网站设计师工资一般多少外贸网站制作哪家好
  • 上海医疗 网站制作鲜花电商网站开发
  • 手机网站变灰聊城做网站推广哪家好
  • 网站反向代理怎么做宠物网站开发与实现
  • 咨询服务公司网站建设重庆本地网站有哪些
  • 网站源码安全吗网站设计与网页制作招聘
  • 网站关键词之间用什么符号隔开网站建设公司包括哪些方面
  • 搜狗网站seo0基础做网站工具
  • 做电影网站赚了几百万win7优化工具哪个好用
  • 抚州南城网站建设怎么建立博客网站
  • 中国人做外贸网站都卖什么谷歌浏览器网页截图快捷键
  • 制作网站的软件什么好用wordpress 访问数据库
  • wordpress做的网站效果聊城手机网站建设系统
  • 网站后台左侧导航折叠效果打不开7免费crm
  • 允许发外链的网站深圳建工建设集团有限公司
  • 徐州网站建设费用上海都市建筑设计有限公司
  • 新手什么网站做外贸制冷机电工程东莞网站建设
  • 昆明网站建设天软科技在线观看的免费
  • 网站备案的要求是高端网站建设 n磐石网络
  • 国外怎么做推广网站3免费做网站
  • 大连网站的优化个人视频制作公司
  • 网站建设分录自己注册公司网站
  • 一个新手如何做网站网站开发服务税率是多少
  • 网站自定义功能实现光做网站推广咋样
  • 怎样提高网站访问速度做网站建设的方案
  • 服装销售网站设计与制作河北建设工程信息网官网入口
  • wordpress福利整站源码新网网站管理
  • 衡阳衡阳县网站建设哈尔滨信息网58同城