博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Vue 中的作用域插槽
阅读量:5973 次
发布时间:2019-06-19

本文共 1215 字,大约阅读时间需要 4 分钟。

作用域插槽

Vue.component('child', { data(){ return { list:[1,2,3,4] } }, template: `
  • {
    {item}}
`,})let vm = new Vue({ el: '#root'})

上面代码,如果此时有个需:child组件在很多地方会被调用,我希望在不同的地方调用child的组件时,这个列表到底怎么循环,列表的样式不是child组件控制的,而是外部child模版站位符告诉我们组件的每一项该如何渲染,也就是说这里不用li标签,而是要用slot标签。

Vue.component('child', { data(){ return { list:[1,2,3,4] } }, template: `
`,})let vm = new Vue({ el: '#root'})

<slot v-for="item of list" :item=item></slot>这段代码的意思是child组件去做一个列表的循环,但是列表项中的每一项怎么显示,我并不关心,具体怎么显示,外部你来告诉我.

<template slot-scope="props"></template>这是一个固定写法,属性值可以自定义。它的意思是当子组件用slot时,会往子组件里传递一个item,从子组件接收的数据都放在了props上。

什么时候使用作用域插槽呢?当子组件循环或某一部分的dom结构应该由外部传递进来的时候,我们要用作用域插槽,使用作用域插槽,子组件可以向父组件的作用域插槽里传递数据,父组件如果想接收这个数据,必须在外层使用template模版占位符,同时通过slot-scope对应的属性名字,来接收你传递过来的数据,上面代码,传递一个一个item过来,在父组件的作用域插槽里面,就可以接收到这个item,就可以使用它了。

转载地址:http://nkdox.baihongyu.com/

你可能感兴趣的文章
菜鸟学Linux命令:bg fg jobs命令 任务管理
查看>>
python 多线程就这么简单(续)
查看>>
【Linux系统编程】 Linux系统调用概述
查看>>
SQL Server Reporting Services:无法检索应用程序文件。部署中的文件已损坏
查看>>
hive中partition如何使用
查看>>
查看mysql数据库版本方法总结
查看>>
大牛手把手教你做日历(建议你看看,你会有收获的)
查看>>
Django中的ORM
查看>>
iOS开发UI篇—Quartz2D使用(图片剪切)
查看>>
spring学习笔记(20)数据库事务并发与锁详解
查看>>
关于Simple_html_dom的小应用
查看>>
鲁肃:蚂蚁金服的三个梦想
查看>>
【springmvc+mybatis项目实战】杰信商贸-27.POI由HSSF升级为XSSF
查看>>
数学常数e的含义
查看>>
APM基础小记
查看>>
MVC
查看>>
CentOS 7 下 Oracle 11g 安装教程
查看>>
JS·基础(一)
查看>>
# 学习笔记-协议# OSI七层模型 与 TCP/IP五层协议
查看>>
Callbacks, Promises and Async/Await
查看>>