vue 插槽 part3
f
vue中的插槽
1.<slot>默认内容</slot>
当副组件不传递信息的时候 显示默认内容
2.<slot></slot> 显示的是插槽中所有的数据
不具名插槽只有一个
具名插槽(可以有多个)
父:<div slot="h"></div>
子: <slot name="h"></slot>
//template 中不能单独使用slot 要使用包裹
VUE中的作用域插槽 //作用域插槽需要用一层template包裹
<section class="app">
<counter>
<template slot-scope="props">
<li>{{props.item}}</li>
</template>
</counter>
</section>
<script>
Vue.component("counter", {
template:` <section>
<ul>
<slot v-for="item of list"
:item="item">
</slot>
</ul>
</section>`,
data: function () {
return {
list:[1, 2, 3, 4]
}
}
})
var vm = new Vue({
el: ".app",
})
</script>
v-once 可以提高性能
一些静态内容展示效率
VUE动态组件
常规方法
<section class="app">
<counter-one v-if="type === 'counter -one'"></counter-one>
<counter-two v-if="type === 'counter -two'"></counter-two>
<button @click="handle">Change</button>
</section> <script>
Vue.component("counter-one", {
template:"<p>counter-one</p>",
}) Vue.component("counter-two", {
template:"<p>counter-two</p>",
}) var vm = new Vue({
el: ".app",
data: {
type:"counter -one"
},
methods:{
handle: function () {
console.log("come")
this.type = this.type === "counter -one" ? "counter -two" : "counter -one"
}
}
})
</script>
动态组件方法
<component :is="type"></component>
<section class="app">
<component :is="type"></component>
<!-- <counter-one v-if="type === 'counter -one'"></counter-one>-->
<!-- <counter-two v-if="type === 'counter -two'"></counter-two>-->
<button @click="handle">Change</button>
</section> <script>
Vue.component("counter-one", {
template:"<p>counter-one</p>",
}) Vue.component("counter-two", {
template:"<p>counter-two</p>",
}) var vm = new Vue({
el: ".app",
data: {
type:"counter-one"
},
methods:{
handle: function () {
console.log("come")
this.type = this.type === "counter-one" ? "counter-two" : "counter-one"
}
}
})
</script>
vue 插槽 part3的更多相关文章
- Vue插槽:(2.6.0以后版本弃用slot和slot-scope,改用v-slot)
关于Vue插槽的概念,大家可以从vue官网的api查看,我是看到网站的对于初接触 这个要概念的人来说不是很清楚,我来贴下原码,就比较直观了 贴下原码: 具名插槽:v-slot:header Html: ...
- Vue 插槽详解
Vue插槽,是学习vue中必不可少的一节,当初刚接触vue的时候,对这些掌握的一知半解,特别是作用域插槽一直没明白. 后面越来越发现插槽的好用. 分享一下插槽的一些知识吧. 分一下几点: 1.插槽内可 ...
- Vue插槽的另外一些特性
之前有个项目,想判断一下,某一个模板内的插槽是否被使用. 不知道是不是问题过于简单,网上没有这方面的说明.我就抽时间验证一下vue插槽相关的一些功能. 然后写下这篇随笔,希望对后来人能有一些帮助. 简 ...
- 学习笔记:Vue——插槽
关于Vue插槽,只用过最简单的语法,现在完整地走一遍官方文档说明,并且探索更多用法. 01.如果组件中没有包含一个<slot>元素,则该组件起始标签和结束标签之间的任何内容都会被抛弃. 0 ...
- vue插槽用法(极客时间Vue视频笔记)
vue插槽 插槽是用来传递复杂的内容,类似方法 <!DOCTYPE html> <html lang="en"> <head> <meta ...
- Vue插槽的深入理解和应用
一开始接触vue时并不知道插槽是什么,后来看了很多文章也是一知半解.然后自己手动敲了一下,在项目中实际应用一下,实在太好用了.后来做小程序后发现也能使用slot,不单单在vue中使用.我就是这么目光短 ...
- Vue 插槽
插槽的概念: 插槽的关键字slot,默认情况下,组件中的模板会覆盖组件中的原始内容(即自定义标签对内部的内容会不显示),解决办法就是使用插槽. 组件的原始内容: 即在vue实例范围之内,因此可以调用实 ...
- vue 插槽slot
本文是对官网内容的整理 https://cn.vuejs.org/v2/guide/components.html#编译作用域 在使用组件时,我们常常要像这样组合它们: <app> < ...
- Vue插槽 slot
1. 什么是插槽 插槽slot 是往父组件中插入额外内容,实现组件的复用,一个插槽插入到一个对应的标签中 2. 实例: 一个组件中不允许有两个匿名插槽 </head> <body&g ...
随机推荐
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 字体图标(Glyphicons):glyphicon glyphicon-file
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...
- P1048 数字加密
P1048 数字加密 转跳点:
- POJ 2823:Sliding Window 单调队列
Sliding Window Time Limit: 12000MS Memory Limit: 65536K Total Submissions: 48930 Accepted: 14130 ...
- JS - 获取数组中的最后1个
arr = [1,2,3,4,5] console.log(arr[arr.length-1]) //输出的为5,即最后一个
- 福州大学2020年春软工实践W班第二次作业
作业描述 这个作业属于哪个课程 福州大学2020年春软工实践W班 这个作业要求在哪里 寒假作业(2/2) 这个作业的目标 开发一个疫情统计程序 作业正文 福州大学2020年春软工实践W班第二次作业 其 ...
- CentOs 后台运行jar
1.启动jar包,后台运行 nohup java -jar xxxx.jar & 2.结束运行 查出正在运行的进程 ps -ef | grep java 杀掉进程 kill pid 上面橙色字 ...
- 工作问题整理-- sqlserver 新增参数限制,maven pom邮件发送
1.SqlServer连续新增参数限制 com.microsoft.sqlserver.jdbc.SQLServerException: 传入的请求具有过多的参数.该服务器支持最多 2100 个参数. ...
- 119-PHP调用private成员的方法
<?php class ren{ //定义人类 private $birthday='1990-12-20'; //定义private修饰的成员属性 public function say_bi ...
- 使用UltraISO(软碟通)制作U盘制作启动盘完整教程
背景:服务器需要安装系统,但是没有启动盘只有镜像. 前提:U盘和安装镜像准备好 步骤一:首先我们先安装软碟通,完成安装后打开软碟通,文件->打开,打开我们需要制作的iso镜像.如下图(也可下本地 ...
- 错误:selenium.common.exceptions.SessionNotCreatedException: Message: Unable to find a matching set of capabilities
错误再现 原因:firefox浏览器版本和浏览器驱动版本不匹配 解决办法:卸载高版本浏览器,安装低版本浏览器