Vue中的属性传值
2019-06-21 18:56
162 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_44956861/article/details/93208957
在Vue中实现父组件给子组件传值最简单的方式,即是通过组件属性的形式进行传值
Vue父子组件间的属性传值
在Vue中实现父组件给子组件传值最简单的方式,即是通过组件属性的形式进行传值
1.我们首先在父组件中通过axios获取后台传过来的数据
如果你没有后台传递数据,我们可以在static目录下去创建一个静态的JSON数据文件,在这里我创建了一个mock文件里面放了两个json文件
getHomeInfo () { axios.get('/api/index.json' + this.city)// 获取参数时传值 .then(this.getHomeInfoSuccessed, this.getHomeInfoFailed) } getHomeInfoSuccessed (res) { console.log(res) res = res.data if (res.ret && res.data) { const data = res.data this.swiperList = data.swiperList //我将数据写入当前组件中的变量 } },
此时数据就已经在当前组件的swiperList 中了
2.在组件上进行属性传值
<home-swiper :list="swiperList"></home-swiper> //:为v-bind:的缩写
在需要传入的组件上进行属性传值
这里的swiperList即为上方axios获取的数据,list为自己定义的传入数据名(你可以理解为swiperList的新变量名为list)
3.在组件页面上接受数据
(1)我们需要在props上定义一个刚刚传入的数据名
props: { list: '' }, // 你也可以直接在上面写上数据类型,限制传进来的数据类型
定义完成后,我们就可以直接在页面中使用了
如:
<swiper-slide v-for="item of list" :key="item.id" v-if="show"> <img class="swiper-image" :src='item.imgUrl'/> </swiper-slide> <div class="swiper-pagination" slot="pagination"></div> </swiper>
相关文章推荐
- Vue-属性传值Props
- Vue 使用Props属性实现父子组件的动态传值
- VUE 父组件向子组件传值 (用属性传值)
- vue父子组件传值
- Vue.js 官方文档摘记 计算属性
- 从vue的组件传值着手浅谈观察者模式
- vue的指令实例属性
- Vue - 在v-repeat中使用计算属性
- IOS 页面属性传值、委托传值、单例传值
- (简)vue的computed(计算属性)
- 原 看程序学Vue.js 8- VUE.JS 通过WATCH 监听属性变化
- iOS 属性传值失败原因
- select标签设置只读属性,且可向后台传值
- vue同级组件间传值
- js中的访问器属性 defineProperty(vue双向绑定的原理)
- vue 判断属性是否为object
- vue.js计算属性computed用法实例分析
- Vue中img的src属性绑定与static文件夹实例
- vue-loader 调用了cssLoaders方法配置了css加载器属性。
- vue 中父子组件传值:props和$emit