微信小程序从入门到入土教程(03)

简介: 微信小程序从入门到入土教程(03)

一、小程序事件的绑定


⼩程序中绑定事件,通过bind关键字来实现。如 bindtap bindinput bindchange 等 不同的组件⽀持不同的事件,具体看组件的说明即可。


1. wxml


<input bindinput="handleInput" />


2. page


Page({
  // 绑定的事件
  handleInput: function(e) {
    console.log(e);
    console.log("值被改变了");
 }
})


3. 特别注意


(1). 绑定事件时不能带参数 不能带括号 以下为错误写法


<input bindinput="handleInput(100)" />


(2). 事件传值 通过标签⾃定义属性的⽅式 和 value


<input bindinput="handleInput" data-item="100" />


(3). 事件触发时获取数据


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 语句可以导⼊外联样式表,只⽀持相对路径。 ⽰例代码:


/** common.wxss **/
.small-p {
  padding:5px; }
/** app.wxss **/
@import "common.wxss";
.middle-p {
  padding:15px; }


3. 选择器


特别需要注意的是 ⼩程序 不⽀持通配符 * 因此以下代码⽆效!


*{
    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 ,然后正常编辑即可。


目录
相关文章
|
1月前
|
小程序 编译器 数据安全/隐私保护
小白保姆级教程:微信公众号开发,从0到1
【8月更文挑战第8天】小白保姆级教程:微信公众号开发,从0到1
52 3
小白保姆级教程:微信公众号开发,从0到1
|
2月前
|
小程序 PHP
全新UI自助图文打印系统小程序源码 PHP后端 附教程
全新UI自助图文打印系统小程序源码 PHP后端 附教程
145 2
|
2月前
|
小程序
【微信小程序-原生开发】富文本编辑器 editor 的使用教程
【微信小程序-原生开发】富文本编辑器 editor 的使用教程
440 0
【微信小程序-原生开发】富文本编辑器 editor 的使用教程
|
2月前
|
小程序 前端开发
【微信小程序-原生开发】实用教程22 - 绘制图表(引入 echarts,含图表的懒加载-获取到数据后再渲染图表,多图表加载等技巧)
【微信小程序-原生开发】实用教程22 - 绘制图表(引入 echarts,含图表的懒加载-获取到数据后再渲染图表,多图表加载等技巧)
100 0
|
2月前
|
小程序
【微信小程序-原生开发】实用教程21 - 分包
【微信小程序-原生开发】实用教程21 - 分包
146 0
|
2月前
|
前端开发 小程序
【微信小程序-原生开发】实用教程20 - 生成海报(实战范例为生成活动海报,内含生成指定页面的小程序二维码,保存图片到手机,canvas 系列教程)
【微信小程序-原生开发】实用教程20 - 生成海报(实战范例为生成活动海报,内含生成指定页面的小程序二维码,保存图片到手机,canvas 系列教程)
224 0
|
2月前
|
小程序 C++
【微信小程序-原生开发】实用教程19 - 表单范例 VS 表单校验(含必填校验函数封装,实时数字校验)
【微信小程序-原生开发】实用教程19 - 表单范例 VS 表单校验(含必填校验函数封装,实时数字校验)
41 0
|
2月前
|
小程序
【微信小程序-原生开发】实用教程18 - 九宫格、底部悬停按钮、页内悬浮按钮、拨打电话、一键复制
【微信小程序-原生开发】实用教程18 - 九宫格、底部悬停按钮、页内悬浮按钮、拨打电话、一键复制
33 0
|
20天前
|
小程序 JavaScript Java
微信小程序的后端开发需要使用什么语言?
【8月更文挑战第22天】微信小程序的后端开发需要使用什么语言?
221 65
|
13天前
|
小程序 JavaScript
Taro@3.x+Vue@3.x+TS开发微信小程序,使用轮播图
本文介绍了使用 Taro 和 Vue 创建轮播组件的两种方法:一是通过 `&lt;swiper&gt;` 实现,二是利用 Nut UI 的 `&lt;nut-swiper&gt;` 组件实现。
Taro@3.x+Vue@3.x+TS开发微信小程序,使用轮播图