vue 内置组件__slot讲解

Posted sunyang-001

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue 内置组件__slot讲解相关的知识,希望对你有一定的参考价值。

slot 是vue的内置组件,主要分为传值和接收值两部分;

首先写一个自定义组件:例如 <js></js>

再写一个template模板

并在构造器中使用components: 挂载,

在构造器的data中写一个选项方法:

data:
  jsData:
    url: ‘http://www.baidu.com‘,
    netName: ‘百度‘,
    skill: ‘seach‘
  
,
主要是传值与接收值部分;
在自定义组件中传值,通过(key,value)的方式
<js>
  <span slot="url"> jsData.url </span>
  <span slot="netName"> jsData.netName </span>
  <span slot="skill"> jsData.skill </span>
</js>
然后在template模板中接收传入的值:
<template id="tep">
  <div>
    <p>百度地址:<slot name="url"></slot></p>
    <p>名称:<slot name="netName"></slot></p>
    <p>作用:<slot name="skill"></slot></p>
   </div>
</template>
将其挂载到 js 组件中
var js =
  template: ‘#tep‘
完整代码示例如下:
 
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>slot</title>
<script src="../assets/js/vue.js"></script>
</head>

<body>
<h1>slot</h1>
<hr>
<div id="app">
<js>
<span slot="url"> jsData.url </span>
<span slot="netName"> jsData.netName </span>
<span slot="skill"> jsData.skill </span>
</js>
</div>

<template id="tep">
<div>
<p>百度地址:<slot name="url"></slot></p>
<p>名称:<slot name="netName"></slot></p>
<p>作用:<slot name="skill"></slot></p>
</div>
</template>

<script>

var js =
template: ‘#tep‘

var app = new Vue(
el: ‘#app‘,
data:
jsData:
url: ‘http://www.baidu.com‘,
netName: ‘百度‘,
skill: ‘seach‘
,
components:
‘js‘: js
)
</script>
</body>

</html>
技术图片

技术图片

 

以上是关于vue 内置组件__slot讲解的主要内容,如果未能解决你的问题,请参考以下文章

Python内置函数__slots__

类的一些内置方法

Vue2.0 的漫长学习ing-4-4

(尚033)Vue_案例_slot(组件间的通信4:slot)

记录一下vue slot

Python_021(内置方法讲解二)