文章目录
- 一、小程序事件的绑定
- 1. wxml
- 2. page
- 3. 特别注意
- 二、样式 WXSS
- 1. 尺寸单位
- 2. 样式导⼊
- 3. 选择器
- 4. 小程序中使用less
一、小程序事件的绑定
⼩程序中绑定事件,通过bind关键字来实现。如 bindtap bindinput bindchange 等 不同的组件⽀持不同的事件,具体看组件的说明即可。
1. wxml
代码语言:javascript复制<input bindinput="handleInput" />
2. page
代码语言:javascript复制Page({
// 绑定的事件
handleInput: function(e) {
console.log(e);
console.log("值被改变了");
}
})
3. 特别注意
(1). 绑定事件时不能带参数 不能带括号 以下为错误写法
代码语言:javascript复制<input bindinput="handleInput(100)" />
(2). 事件传值 通过标签⾃定义属性的⽅式 和 value
代码语言:javascript复制<input bindinput="handleInput" data-item="100" />
(3). 事件触发时获取数据
代码语言:javascript复制 handleInput: function(e) {
// {item:100}
console.log(e.currentTarget.dataset)
// 输入框的值
console.log(e.detail.value);
}
二、样式 WXSS
WXSS( WeiXin Style Sheets )是⼀套样式语⾔,⽤于描述 WXML 的组件样式。 与 CSS 相⽐,WXSS 扩展的特性有:
- 响应式⻓度单位 rpx
- 样式导⼊
1. 尺寸单位
rpx (responsive pixel): 可以根据屏幕宽度进⾏⾃适应。规定屏幕宽为 750rpx 。如在iPhone6 上,屏幕宽度为 375px ,共有750个物理像素,则 750rpx = 375px = 750物理像素 , 1rpx = 0.5px = 1物理像素 。
设备 | rpx换算px (屏幕宽度/750) | px换算rpx (750/屏幕宽度) |
---|---|---|
iPhone5 | 1rpx = 0.42px | 1px = 2.34rpx |
iPhone6 | 1rpx = 0.5px | 1px = 2rpx |
iPhone6 Plus | 1rpx = 0.552px | 1px = 1.81rpx |
建议: 开发微信⼩程序时设计师可以⽤ iPhone6 作为视觉稿的标准。 使⽤步骤: 1. 确定设计稿宽度 pageWidth 2. 计算⽐例 750rpx = pageWidth px ,因此 1px=750rpx/pageWidth 。 3. 在less⽂件中,只要把设计稿中的 px => 750/pageWidth rpx 即可。
2. 样式导⼊
wxss中直接就⽀持,样式导⼊功能。 也可以和 less中的导⼊混⽤。 使⽤ @import 语句可以导⼊外联样式表,只⽀持相对路径。 ⽰例代码:
代码语言:javascript复制/** common.wxss **/
.small-p {
padding:5px; }
代码语言:javascript复制/** app.wxss **/
@import "common.wxss";
.middle-p {
padding:15px; }
3. 选择器
特别需要注意的是 ⼩程序 不⽀持通配符 * 因此以下代码⽆效!
代码语言:javascript复制*{
margin:0;
padding:0;
box-sizing:border-box;
}
⽬前⽀持的选择器有:
选择器 | 样例 | 样例描述 |
---|---|---|
.class | .intro | 选择所有拥有 class=“intro” 的组件 |
#id | #firstname | 选择拥有 id=“firstname” 的组件 |
element | view | 选择所有 view 组件 |
element, element | view,checkbox | 选择所有⽂档的 view 组件和所有的 checkbox 组 件 |
nth-child(n) | view:nth-child(n) | 选择某个索引的标签 |
::after | view::after | 在 view 组件后边插⼊内容 |
::after | view::before | 在 view 组件前边插⼊内容 |
4. 小程序中使用less
原⽣⼩程序不⽀持 less ,其他基于⼩程序的框架⼤体都⽀持,如 wepy , mpvue , taro 等。 但是仅仅因为⼀个less功能,⽽去引⼊⼀个框架,肯定是不可取的。因此可以⽤以下⽅式来实现 (1). 编辑器是 vscode (2). 安装插件 easy less
(3). 在vs code的设置中加⼊如下,配置
(4). 在要编写样式的地⽅,新建 less ⽂件,如 index.less ,然后正常编辑即可。
相关内容:
- 微信小程序从入门到入土教程(01)
- 微信小程序入门之模板语法(02)
- 微信小程序从入门到入土教程(03)
- 微信小程序入门之常用组件(04)
- 微信小程序入门之自定义组件(05)