17、将数据渲染到组件(列表渲染、模板语法、父子组件之间的传值)

简介: 前言:GitHub:https://github.com/Ewall1106/mall(请选择分支17)1、基础语法(1)v-for语法https://cn.vuejs.org/v2/guide/list.html我们用 v-for 指令根据一组数组的选项列表进行渲染。

前言:GitHub:https://github.com/Ewall1106/mall(请选择分支17)

1、基础语法

(1)v-for语法
https://cn.vuejs.org/v2/guide/list.html
我们用 v-for 指令根据一组数组的选项列表进行渲染。v-for 指令需要使用 item in items形式的特殊语法,items 是源数据数组并且 item 是数组元素迭代的别名。

img_1e46406ce72f9143f47b9154954b63a8.png
vue官网

(2)模板语法
https://cn.vuejs.org/v2/guide/syntax.html
我们获取到的值要用模板语法将值插入到页面中, 数据绑定最常见的形式就是使用Mustache语法 (双大括号) 的文本插值:

<span>Message: {{ msg }}</span>

(3)父子组件之间的传值
https://cn.vuejs.org/v2/guide/components-props.html
在Vue中,父子组件的关系可以总结为prop向下传递,事件向上传递。父组件通过prop给子组件下发数据,子组件通过事件给父组件发送信息。

img_e1d53a166f67b2530062d6d789b35a70.png
vue官网

具体我们在项目中动手实现简单的传值。

2、项目运用

(1)数据赋值于data中
上一篇我们用axios获取了数据并打印了,现在我们先把数据赋值data的属性中。

img_563854d9d4d144b4b0fca72634140fd1.png
赋值

(2)传值给轮播图子组件

  • ① 通过 v-bind动态赋值,把轮播图这个数据对象传递给轮播图组件carousel。
img_a6695706605b6169f286d9f6944c6ede.png
父组件传值

:是v-bind的简写形式

  • ② 子组件接收数据
    子组件什么接收数据呢?很简单,在props中定义属性名就可以了;
    然后用type定义一下传过来的数据类型,进行验证;default属性则是定了个默认值。
img_5e70ee1339a74dd3233923bd0d7955e0.png
子组件接收值
  • ③ 接下来就是用v-for循环把数据渲染到页面上
img_8091dec3d25f3f2f13437584f00af9de.png
数据渲染

ok,至此为止,父子组件的基本传值就是这样了。

(3)分类模块
跟轮播图组件渲染数据的模式大同小异,不过多阐述。

img_b2579bea812671706d769368c312a8f5.png
分类模块数据渲染

(4)推荐模块
这是除了使用前面提到的列表渲染外,就是使用Mustache语法 (双大括号) 的文本插值了。

img_ac1d9a2a32c5a3b72197fdb78de159cc.png
推荐模块数据渲染

3、章结

至此,我们就将首页的mock数据从建立—>到访问—>渲染到页面的一个基本的流程走完了,后面我们根据页面的拓展会对mock数据进行修改和添加,所以请实时关注;再者,当请求数据的接口多了,这样写axios肯定会麻烦,所以后面也会对axios进行下统一的封装。

参考学习
https://cn.vuejs.org/v2/guide/list.html
https://cn.vuejs.org/v2/guide/syntax.html
https://github.com/Ewall1106/mall

目录
相关文章
|
前端开发
VUE3.0 在父子组件中相互触发组件的函数方法
VUE3.0 在父子组件中相互触发组件的函数方法
375 0
|
3月前
|
JavaScript
Vue组件传值异步问题--子组件拿到数据较慢
Vue组件传值异步问题--子组件拿到数据较慢
235 58
|
5月前
|
移动开发 JavaScript 前端开发
VUE实现一个列表清单【props 父子组件通信、slot插槽的使用、全局自定义指令的封装、$nextTick解决异步DOM更新、巧用v-model简化父子组件之间的通信、触发事件的事件源event】
VUE实现一个列表清单【props 父子组件通信、slot插槽的使用、全局自定义指令的封装、$nextTick解决异步DOM更新、巧用v-model简化父子组件之间的通信、触发事件的事件源event】
44 0
|
6月前
|
JavaScript
vue父子组件传值,父组件内容更新子组件内容不实时更新
vue父子组件传值,父组件内容更新子组件内容不实时更新
2272 0
|
6月前
|
JavaScript
子组件向父组件传参的方式?
子组件向父组件传参的方式?
94 0
|
7月前
|
前端开发 JavaScript 开发者
vue3、react组件数据传值对比分析——父组件传递子组件,子组件传递父组件(二)
vue3、react组件数据传值对比分析——父组件传递子组件,子组件传递父组件
79 0
|
7月前
|
JavaScript 前端开发 算法
vue3、react组件数据传值对比分析——父组件传递子组件,子组件传递父组件(一)
vue3、react组件数据传值对比分析——父组件传递子组件,子组件传递父组件
86 0
|
7月前
|
JavaScript
vue子组件向父组件传参的方式
vue子组件向父组件传参的方式
58 0
|
开发者
vue3中父组件与子组件的区别和传参的方法
vue3中父组件与子组件的区别和传参的方法
|
JavaScript
vue中父组件异步数据通过props方式传递给子组件,子组件接收不到的问题
vue中父组件异步数据通过props方式传递给子组件,子组件接收不到的问题
372 0