资讯专栏INFORMATION COLUMN

关于vue中组件传值的一些问题

chnmagnus / 3008人阅读

摘要:一父子组件之间的传值父组件传递给子组件需要在子组件中通过接收值子组件传递给父组件自定义事件,要传输的值子父在子组件中需要通过点击事件传递给父组件值,点击事件触发后,通过自定义事件,要传递的值注意在父组件接收时必须在对应的子组件接收相应

一:父子组件之间的传值**

父组件传递给子组件:需要在子组件中通过props接收值
子组件传递给父组件:$emit("自定义事件",要传输的值)

子--->父
在子组件中需要通过点击事件传递给父组件值,点击事件触发后,通过this.$emit("自定义事件",要传递的值)
 **注意**在父组件接收时必须在对应的子组件接收相应的传值操作。


(图片是我盗的!侵删!!)

  **注意**
  动态数据需要用下图方式
   

二、通过路由带参数进行传值

①两个组件 A和B,A组件通过query把orderId传递给B组件(触发事件可以是点击事件、钩子函数等)
this.$router.push({ path: "/conponentsB", query: { orderId: 123 } }) // 跳转到B
②在B组件中获取A组件传递过来的参数
this.$route.query.orderId

三、通过设置 Session Storage缓存的形式进行传递(这个没用过)

①两个组件A和B,在A组件中设置缓存orderData
const orderData = { "orderId": 123, "price": 88 }
sessionStorage.setItem("缓存名称", JSON.stringify(orderData))
②B组件就可以获取在A中设置的缓存了
const dataB = JSON.parse(sessionStorage.getItem("缓存名称"))
此时 dataB 就是数据 orderData

五、vuex进行传值
为什么使用vuex?
vuex主要是是做数据交互,父子组件传值可以很容易办到,但是兄弟组件间传值(兄弟组件下又有父子组件),或者大型spa单页面框架项目,页面多并且一层嵌套一层的传值,异常麻烦,用vuex来维护共有的状态或数据会显得得心应手。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/106676.html

相关文章

  • 简单说说vue的父子组件,父子组件传值vuex

    摘要:我们需要在里改动一下代码首先就是绑定一个自定义事件再增加然后在中变成就是触发父组件中的方法所以,触发了父组件的函数,改变了父组件的的值,父组件再通过传值给子组件。从而实现数据传递,父子组件通信。 一、vue的父子组件之间是如何传值的? 首先呢,需要说说的是,vue既然有双向绑定,那为何会有父子组件之间的传值问题?这个问题也简单,vue的组件会供其他的vue页面进行调用,如果数组都是双...

    Tecode 评论0 收藏0
  • vue数据传递--我有特殊的实现技巧

    摘要:同时有一种特殊的实现方案。组件之间传值有这么几种数据传递方式,和特殊的。在所有实例中使用其进行数据的通信。双多方使用同名事件进行沟通。数据非长效数据,无法保存,只在后生效。这样约定的好处是,我们能够记录所有中发生的改变。 前言 最近碰到了比较多的关于vue的eventBus的问题,之前定技术选型的时候也被问到了,vuex和eventBus的使用范围。所以简单的写一下。同时有一种特殊的实...

    xiaoxiaozi 评论0 收藏0
  • VueJS学习使用Vuex详解

    摘要:在单页面组件的开发中的和的都统称为同一状态管理,个人的理解是全局状态管理更合适简单的理解就是你在中定义了一个数据之后,你可以在所在项目中的任何一个组件里进行获取进行修改,并且你的修改可以得到全局的响应变更。 在SPA单页面组件的开发中 Vue的vuex和React的Redux 都统称为同一状态管理,个人的理解是全局状态管理更合适;简单的理解就是你在state中定义了一个数据之后,你可以...

    JessYanCoding 评论0 收藏0
  • VueJS学习使用Vuex详解

    摘要:在单页面组件的开发中的和的都统称为同一状态管理,个人的理解是全局状态管理更合适简单的理解就是你在中定义了一个数据之后,你可以在所在项目中的任何一个组件里进行获取进行修改,并且你的修改可以得到全局的响应变更。 在SPA单页面组件的开发中 Vue的vuex和React的Redux 都统称为同一状态管理,个人的理解是全局状态管理更合适;简单的理解就是你在state中定义了一个数据之后,你可以...

    qc1iu 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<