微信小程序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>

微信小程序slot(二)的更多相关文章
- 微信小程序配置二
tabBar 客户端窗口底部的tab页面切换,只能配置最好两个.最多5个tab 属性说明: 属性 类型 必填 默认值 描述 color HexColor 是 tab上的文字默认颜色 selectedC ...
- 又是新动作!微信小程序专属二维码出炉
又到了晚上,微信又给我们带来了惊喜,并这次不是新的能力,而是把大家再熟悉不过的二维码换了新的造型. 正式揭晓:微信特制的小程序码.扫一扫新二维码 只要你的微信升级到了 6.5.7 版本,就可以扫码或者 ...
- 前端笔记之微信小程序(二){{}}插值和MVVM模式&数据双向绑定&指令&API
一.双花括号{{}}插值和MVVM模式 1.1 体会{{}}插值 index.wxml的标签不是html的那些标签,这里的view就是div. {{}}这样的插值写法,叫做mustache语法.mus ...
- 微信小程序入门二
# 微信小程序开发实战 ## 准备 ### 课程概要 - 微信小程序基本介绍- 开发环境及工具的安装配置- 微信小程序的设计规范- 微信小程序基本结构分析- WXML和WXSS语法规范- 微信小程序A ...
- 关于微信小程序获取二维码的踩坑记录
1.踩坑需求:获取小程序的二维码 2.踩坑接口: https://api.weixin.qq.com/wxa/getwxacode?access_token=ACCESS_TOKEN3 踩坑代码 pu ...
- 家庭记账本之微信小程序(二)
在网上查阅了资料后,了解到了在完成微信小程序之前要完成注册阶段的工作,此次在这介绍注册阶段的流程. 1.首先你要确定小程序的定位.目的以及文案资料等(准备工作). 2.打开微信公众平台官网,点击右上角 ...
- 优秀WordPress版微信小程序推荐(二)
随着使用WordPress版微信小程序的用户越来越多,其中涌现不少优秀的小程序,无论UI设计还是功能上都远远超过我开源的程序.这次是推荐第二批优秀Wordpress版微信小程序,希望有更多的小程序的爱 ...
- 微信小程序测试二三事
微信小程序虽是微信推出的新形态的产品,但是在测试思路上跟其他的传统测试,大相径庭.既然大相径庭,那我们该如何测试呢. 功能测试功能测试跟传统的web功能测试一样,不是app的功能测试哦.这是因为小程序 ...
- 记账本微信小程序开发二
新建一个微信小程序项目 熟悉软件各种操作.
- C#开发微信小程序(二)
导航:C#开发微信小程序系列 关于小程序项目结构,框架介绍,组件说明等,请查看微信小程序官方文档,关于以下贴出来的代码部分我只是截取了一些片段,方便说明问题,如果需要查看完整源代码,可以在我的项目库中 ...
随机推荐
- Halo 正式开源: 使用可穿戴设备进行开源健康追踪
在飞速发展的可穿戴技术领域,我们正处于一个十字路口.市场上充斥着各式时尚.功能丰富的设备,声称能够彻底改变我们对健康和健身的方式.然而,在这些光鲜的外观和营销宣传背后,隐藏着一个令人担忧的现实:大多数 ...
- cornerstone中raft_server源码解析
1.概述 cornerstone中核心即为raft_server的实现. 在raft里面有follower,leader,candidate三种角色,且角色身份还可以相互切换. 写三个类followe ...
- 纪念第一次在 Github 上提 ISSUE 得到了老哥的回复
背景 第一次在 GitHub 上提 ISSUE,提问的内容就是我的上一篇博文 rustlings v6.0 运行时出现 " You are trying to run Rustlings u ...
- 利用Java heap dump查找、分析问题
http://autumnice.blog.163.com/blog/static/555200201143163723346/?fromdm&fromSearch&isFromSea ...
- 接口文档解决方案之Torna
◆一.开源项目简介 接口文档解决方案,目标是让接口文档管理变得更加方便.快捷.Torna采用团队协作的方式管理和维护接口文档,将不同形式的文档纳入进来统一维护. Torna弥补了传统文档生成工具(如s ...
- Python之时间日期操作
常用时间操作的函数汇总, 涵盖 常用的time datetime 1.计算两个日期相差天数 import datetime str1 = '2021-10-20' str2 = '2021-10- ...
- vagrant搭建开发环境
一:我们为什么需要用这玩意 我们在开发中经常会面临的问题:环境不一致,有人用Mac有人用Windos还有几个用linux的,而我们的服务器都是linux. 在我本地是可以的啊,我测了都,没有问题啊,然 ...
- Codeforces Round 713 (Div
Codeforces Round 713 (Div. 3) A-B Palindrome 给定字符串只含有\('?'\ '0' \ '1'\),给定字符串中1的个数\(a\)和0的个数\(b\),你需 ...
- 雪碧图的魔力:优化CSS动画场景
什么是雪碧图 雪碧图(CSS Sprites),是一种网页图像处理技术,它将多个小图标或图像合并成一个大的图像文件.这种方法允许浏览器通过一次HTTP请求加载多个图像,而不是为每个小图标单独发起请求. ...
- vue 适配不同分辨率显示问题
新建 js 文件 rem.js class DevicePixelRatio { constructor() { // this.flag = false; } // 获取系统类型 _getSyste ...