您的位置:首页 > 移动开发 > 微信开发

微信小程序基础知识学习(二)

2020-03-10 00:41 106 查看

1.允许上传的文件后缀名

1.wxs   2.png   3.jpg   4.jpeg   5.gif   6.svg   7.json   8.cer   9.mp3   10.aac
11.m4a   12.mp4   13wav   14.ogg   15.silk

2.sitemap配置

具体配置说明
页面收录设置:可对整个小程序的索引进行关闭,小程序管理后台-设置-基本设置-页面收录设置;详情
sitemap 配置:可对特定页面的索引进行关闭

注:没有 sitemap.json 则默认所有页面都能被索引
注:{“action”: “allow”, “page”: “*”} 是优先级最低的默认规则,未显式指明 “disallow” 的都默认被索引

3.自定义组件

开发者可以将页面内的功能模块抽象成自定义组件,以便在不同的页面中重复使用;也可以将复杂的页面拆分成多个低耦合的模块,有助于代码维护。

组件模板

组件模板的写法与页面模板相同。组件模板与组件数据结合后生成的节点树,将被插入到组件的引用位置上。
在组件模板中可以提供一个 节点,用于承载组件引用时提供的子节点。

组件wxml的slot
在组件的wxml中可以包含 slot 节点,用于承载组件使用者提供的wxml结构。
默认情况下,一个组件的wxml中只能有一个slot。需要使用多slot时,可以在组件js中声明启用。

Component({
options: {
multipleSlots: true // 在组件定义时的选项中启用多slot支持
},
properties: { /* ... */ },
methods: { /* ... */ }
})
此时,可以在这个组件的wxml中使用多个slot,以不同的 name 来区分。

组件样式
组件对应 wxss 文件的样式,只对组件wxml内的节点生效。编写组件样式时,需要注意以下几点:

1. 组件和引用组件的页面不能使用id选择器(#a)、属性选择器([a])和标签名选择器,请改用class选择器。
2.组件和引用组件的页面中使用后代选择器(.a .b)在一些极端情况下会有非预期的表现,如遇,请避免使用。
3. 子元素选择器(.a>.b)只能用于view 组件与其子节点之间,用于其他组件可能导致非预期的情况。
4. 继承样式,如 font 、 color ,会从组件外继承到组件内。
5.除继承样式外, app.wxss 中的样式、组件所在页面的的样式对自定义组件无效(除非更改组件样式隔离选项)。

4.组件样式隔离( styleIsolation )

默认情况下,自定义组件的样式只受到自定义组件 wxss 的影响。除非以下两种情况:

1.app.wxss 或页面的 wxss中使用了标签名选择器(或一些其他特殊选择器)来直接指定样式,这些选择器会影响到页面和全部组件。通常情况下这是不推荐的做法。
2.指定特殊的样式隔离选项 styleIsolation 。
Component({
options: {
styleIsolation: ‘isolated’ //isolated表示启用样式隔离
}
})

外部样式类
有时,组件希望接受外部传入的样式类。此时可以在 Component 中用 externalClasses 定义段定义若干个外部样式类

/* 组件 custom-component.js */
Component({
externalClasses: ['my-class']
})
``
`<!-- 组件 custom-component.wxml -->
<custom-component class="my-class">这段文本的颜色由组件外的 class
决定</custom-component>

引用页面或父组件的样式
即使启用了样式隔离 isolated ,组件仍然可以在局部引用组件所在页面的样式或父组件的样式。

例如,如果在页面 wxss 中定义了:

.blue-text {
color: blue;
}
在这个组件中可以使用 ~ 来引用这个类的样式:
<view class="~blue-text"> 这段文本是蓝色的 </view>
如果在一个组件的父组件 wxss 中定义了:

.red-text {
color: red;
}
在这个组件中可以使用 ^ 来引用这个类的样式:

<view class="^red-text"> 这段文本是红色的 </view>
也可以连续使用多个 ^ 来引用祖先组件中的样式。

注意:如果组件是比较独立、通用的组件,请优先使用外部样式类的方式
,而非直接引用父组件或页面的样式。
  • 点赞
  • 收藏
  • 分享
  • 文章举报
yanghongyan001 发布了19 篇原创文章 · 获赞 0 · 访问量 493 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: