zoukankan      html  css  js  c++  java
  • vue学习指南:第九篇(详细)

    Slot  v-slot 插槽元素

           浏览器在解析时候首先把它当作标签来解析,只有遇到不认识的就不管了,直接跳过,当你发现是组件,在以组件形式解析。

    使用插槽的好处?

    比如一个网站 分布顶部都是一样的,如果使用组件,要写好几个导航组件。我只写一个导航组件,然后让插值里面东西去覆盖内容 就可以了。

     

    * 在页面渲染的时候,slot元素会被替换成组件标签里面的东西。那这个slot就是哈哈哈。

    * 不仅可以直接写内容,还可以套标签。还可以写其它组件。

    1. 编译作用域 在谁的模板下,组件标签中的数据就是谁的。

    <p>{{ name }}</p>   它在实例的模板下,所以是 李四

    子组件:                                           父组件:

                      

    2. 默认内容,组件标签中如果没有内容,在组件模板下<slot></slot>中的内容就是默认内容,如果在组件标签上写了内容,就不去渲染 slot里面的内容

    <myhead></myhead>
    
    <slot>哈哈哈哈我好帅</slot> 默认内容
    

      

    3. 具名插槽

    1. 为什么叫 具名插槽,就是说明有很多 slot ,每个 slot都有自己的名字。

    2. slot 元素有个特殊的特性  :name。这个特性可以用来定义额外的插槽

    4. 插槽作用域:slot(插槽)在组件模板中,使用数据是当前组件的数据,组件标签在父组件的模板中调用,里面使用的数据是父组件的。

    1. 有时候让插槽里面的内容能够访问子组件里的数据是很有用的。

    2. 在组件标签中 我想使用子组件的 name 但这个name是实例对象的父组件的,因为组件标签在实例对象模板中。

    3。 为了让 user 在父级的插槽使用,我们将 user 作为<slot>插槽元素的一个特性绑定上去。

    4. 我们可以给 v-slot 带一个值,来定义我们提供的插槽 prop。

     

    需求:组件标签(父组件)使用自己(子组件)组件中的数据?

    1. 将子组件的数据绑定到插槽标签 <slot>上

     

    绑定在 slot 的 u 都存在插槽里的叫 prop 对象,要用 v-slot=“yh” 定义一个 prop对象,这个,yh就是定义 prop对象,而这个对象上存的就是子组件的数据。

    绑定在 slot 上的属性,会形成一个 prop对象,用 v-slot 来定义这个prop对象。

    2. 在组件标签上用 v-slot = “users” users 就是这个 prop对象了。

    {{ users.u }}  就是 user 对应的 “张三” 数据

     

    插槽注意点:

    * 可以打乱顺序,给名字对应上就可以

    * 组件标签里面的 v-slot:xx,后面绑定的名称要和模板里的对应。

    * 如果不写 v-slot就不出

    作者:晋飞翔

    手机号(微信同步):17812718961

    希望本篇文章 能给正在学习 前端的朋友 或 以及工作的朋友 带来收获 不喜勿喷 如有建议 多多提议 谢谢!

     

  • 相关阅读:
    23、Django实战第23天:视频播放页面
    22、Django实战第22天:课程评论
    21、Django实战第21天:课程章节信息
    20、Django实战第20天:课程详情页
    19、Django实战第19天:课程列表页
    Tomcat 的 catalina.out 日志分割
    18、Django实战第18天:课程机构收藏功能
    17、Django实战第17天:机构详情展示
    16、Django实战第16天:优化url
    15、Django实战第15天:我要学习咨询
  • 原文地址:https://www.cnblogs.com/jinfeixiang/p/11593101.html
Copyright © 2011-2022 走看看