zoukankan      html  css  js  c++  java
  • 微信小程序slot(二)

    在组件的 wxml 中可以包含 slot 节点,用于承载组件使用者提供的 wxml 结构。
    默认情况下,一个组件的 wxml 中只能有一个 slot 。需要使用多 slot 时,可以在组件 js 中声明启用。
    
    ps:组件对应 wxss 文件的样式,只对组件wxml内的节点生效。编写组件样式时,需要注意以下几点:
    1==>组件和引用组件的页面不能使用id选择器(#a)、属性选择器([a])和标签名选择器,请改用class选择器。(注意)
    
    2==> 组件件和引用组件的页面中使用后代选择器(.a .b)在一些极端情况下会有非预期的表现,如遇,请避免使用。
    
    3==>子元素选择器(.a>.b)只能用于 view 组件与其子节点之间,用于其他组件可能导致非预期的情况。
    
    4==>继承样式,如 font 、 color ,会从组件外继承到组件内。(重点)
    
    5==>除继承样式外, app.wxss 中的样式、组件所在页面的的样式对自定义组件无效(除非更改组件样式隔离选项)。
    
    什么是组件样似隔离选项
    
    默认情况下,自定义组件的样式只受到自定义组件 wxss 的影响。除非以下两种情况:
    
    (1)app.wxss 或页面的 wxss 中使用了标签名选择器(或一些其他特殊选择器)来直接指定样式,
     这些选择器会影响到页面和全部组件。通常情况下这是不推荐的做法。
     比如说你在app.wxss中定义了
     view{color:red};
     你使用了标签选择器,那么页面以及所有组件
     字体颜色是红色哈~;
    
    
    (2) 指定特殊的样式隔离选项 styleIsolation
    isolated 表示启用样式隔离,在自定义组件内外,使用 class 指定的样式将不会相互影响(一般情况下的默认值);
    apply-shared 表示页面 wxss 样式将影响到自定义组件,但自定义组件 wxss 中指定的样式不会影响页面;
    shared 表示页面 wxss 样式将影响到自定义组件,自定义组件 wxss 中指定的样式也会影响页面和其他设置了 apply-shared 或 shared 的自定义组件。(这个选项在插件中不可用。)
    
    Component({
      options: {
        styleIsolation: 'isolated'
      }
    })
    

    组件

    组件.js中
    
    Component({
      options: {
        multipleSlots: true // 在组件定义时的选项中启用多slot支持
      },
      properties: { /* ... */ },
      methods: { /* ... */ }
    })
    
    <view class="cont">
        <slot name="before"></slot>
        <view>这里是组件的内部细节</view>
        <slot name="after"></slot>
    </view>
    

    父页面使用

    <listview>
         <!-- 这部分内容将被放置在组件 <slot name="before"> 的位置上 -->
            <view slot="before">这里是插入到组件"before"</view>
        <!-- 这部分内容将被放置在组件 <slot name="after"> 的位置上 -->
        <view slot="after">这里是插入到组件"after"的内容</view>
    </listview>
    

    作者:流年少年
    出处:https://www.cnblogs.com/ishoulgodo/

    想问问题,打赏了卑微的博主,求求你备注一下的扣扣或者微信;这样我好联系你;(っ•̀ω•́)っ✎⁾⁾!

    如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,或者关注博主,在此感谢!

    万水千山总是情,打赏5毛买辣条行不行,所以如果你心情还比较高兴,也是可以扫码打赏博主(っ•̀ω•́)っ✎⁾⁾!

    想问问题,打赏了卑微的博主,求求你备注一下的扣扣或者微信;这样我好联系你;(っ•̀ω•́)っ✎⁾⁾!

    支付宝
    微信
    本文版权归作者所有,欢迎转载,未经作者同意须保留此段声明,在文章页面明显位置给出原文连接
    如果文中有什么错误,欢迎指出。以免更多的人被误导。
  • 相关阅读:
    (5)html表单
    (4)html表格
    (3)HTML ”列表“、图片和超链接
    (1)html开头解说与案例演示
    学习web前端前感
    一、资源合并与压缩
    HTTP协议原理
    图解HTTP总结
    基于TypeScript从零重构axios
    元組
  • 原文地址:https://www.cnblogs.com/ishoulgodo/p/13909336.html
Copyright © 2011-2022 走看看