微信小程序实战 (WXSS:小程序版CSS、WXS:小程序版JavaScript)

简介: 微信小程序实战 (WXSS:小程序版CSS、WXS:小程序版JavaScript)

上一篇讲了WXML:小程序版HTML,这一篇介绍WXSS:小程序版CSS。

1. WXSS:小程序版CSS。

WXSS是一套样式语言,为了便于前端开发的上手,WXSS同HTML的CSS样式文件大部分特性一样。它用来决定WXML的样式,同时在CSS基础上进行了修改扩充。 其中扩展属性有尺寸单位、样式导入。

1.1.尺寸单位

1.1.1 介绍

rpx 可以根据屏幕宽度进行自适应。 与px的换算关系,下图可以看出不同的手机型号,px与rpx之间换算关系是不一样的,官方建议使用iPhone6作为视觉稿的标准

网络异常,图片无法展示
|

1.1.2 使用案例

<view style="width:375rpx;height:300rpx;border:1px solid black">测试RPX</view>
<view style="width:162px;height:300px;border:1px solid black">测试PX</view>
复制代码

iPhone5机型

网络异常,图片无法展示
|
iPhone6机型
网络异常,图片无法展示
|
由此可以看出rpx是根据机型等比例缩放的,而px是固定大小的。因此机型的适应性上建议使用rpx。

1.2.样式导入

1.2.1介绍

看官文描述使用@import语句进行样式导入。 因此对于公共的样式可以统一设置,然后导入即可。

1.2.2测试

创建style文件夹创建testImport.wxss文件

text{
  color: rgb(22, 71, 207);
}
复制代码

引入该样式

/* pages/eventTest/eventTest.wxss */
@import "../../style/testImport.wxss";
复制代码

测试

网络异常,图片无法展示
|

1.3.内联样式

1.在标签中增加style设置样式,样式的值可以{{}}动态获取,但是运行时会进行解析影响运行效率。

<view style="color:{{color}};" />
复制代码

1.在标签中class 指定样式规则。具体规则内容写在WXSS文件中如:

<view class="inputNumber" />
复制代码
/* pages/eventTest/eventTest.wxss */
.inputNumber{ 
  border:1px solid gray; 
  padding:2px; 
  margin:1px 20px 1px 20px; 
}
复制代码

1.4.选择器

支持的选择器有:

网络异常,图片无法展示
|

1.5.全局样式与局部样式

定义在最外层的app.wxss文件中的样式都为全局样式。而自己定义的页面中的wxss文件中的样式则为局部样式优先级高,设置的样式如果与全局的样式相同则覆盖全局样式。

至此WXSS:小程序版CSS结束

2.WXS:小程序版JavaScript

2.1模块

WXS 代码可以编写在 wxml 文件中的 <wxs> 标签内,或以 .wxs 为后缀名的文件内。
复制代码

2.1.1 module 属性

module是wxs标签必填属性,且各个wxs的module属性需要唯一,不能重复没否则会被后者覆盖 module的值命名,首字母必须英文(大小写)、下划线,剩下的字符可以是英文(大小写)、下划线、数字

测试

<!--pages/wxsTest/wxsTest.wxml-->
<text>pages/wxsTest/wxsTest.wxml</text>
<wxs module="test01">
var some_msg = "hello wxsTest"; 
module.exports = { msg : some_msg, }
</wxs>
<view>{{test01.msg}}</view>
复制代码

网络异常,图片无法展示
|

2.1.2 src 属性

src 属性可以用来引用其他的 wxs 文件模块。
引用的时候,要注意如下几点:
只能引用 .wxs 文件模块,且必须使用相对路径。
wxs 模块均为单例, wxs 模块在第一次被引用时,会自动初始化为单例对象。多个页面,多个地
方,多次引用,使用的都是同一个 wxs 模块对象。
如果一个 wxs 模块在定义之后,一直没有被引用,则该模块不会被解析与运行。
复制代码

新建pages/comm.wxs

// /pages/comm.wxs 
var foo = "'hello world' from comm.wxs"; 
var bar = function(d) { 
  return d; 
}
module.exports = { foo: foo, bar: bar };
module.exports.msg = "some msg";
复制代码

引用

<wxs src="../../pages/comm.wxs" module="comm"/> 
<view>{{comm.msg}}</view> 
<view>{{comm.bar(comm.foo)}}</view>
复制代码

测试

网络异常,图片无法展示
|
require函数:在 .wxs 模块中引用其他 wxs 文件模块,可以使用 require 函数。

tools.wxs

var foo = "'hello world' from tools.wxs";
var bar = function (d) {
return d;
}
module.exports = {
FOO: foo,
bar: bar,
};
module.exports.msg = "some msg";
复制代码

comm.wxs

// /pages/comm.wxs
var tools = require("./tools.wxs");
console.log(tools.FOO);
console.log(tools.bar("comm.wxs"));
console.log(tools.msg);
复制代码

引入wxsTest.wxml

<!-- /page/index/wxsTest.wxml -->
<wxs src="../../pages/comm.wxs" module="logic" />
复制代码

网络异常,图片无法展示
|

2.2变量

2.3注释

2.4运算符

2.5语句

2.6数据类型

2.7基础类库

到此小程序框架基础部分就结束了,然后后面的: (微信小程序框架组件、微信小程序自定义组件、微信小程序框架api)模块在实战中展开讲吧。

下一篇: 微信小程序后端Java接口开发



相关文章
|
6月前
|
移动开发 前端开发 JavaScript
征信报告修改器,征信报告生成器,制作软件无痕修改软件【js+html+css】
本项目为信用评分模拟器教学工具,采用HTML5实现,仅供学习参考。核心功能通过JavaScript构建,包含虚拟数据生成、权重分配及信用因素分析(如还款记录、信用使用率等)。
|
6月前
|
存储 自然语言处理 前端开发
抖音快手小红书虚拟评论截图生成器,模拟对话制作工具,html+js+css
这是一款纯前端实现的多平台虚拟评论生成器,支持抖音、快手、小红书风格,适用于产品演示与UI设计。采用Vanilla JS与Flexbox布局,利用IndexedDB存储数据,CSS Variables切换主题。
|
6月前
|
前端开发 JavaScript
个人征信电子版无痕修改, 个人信用报告pdf修改,js+html+css即可实现【仅供学习用途】
本代码展示了一个信用知识学习系统的前端实现,包含评分计算、因素分析和建议生成功能。所有数据均为模拟生成
|
3月前
|
缓存 小程序 前端开发
商城/点餐/家政类小程序源码合集_微信抖音小程序源码开发从入门到精通实战
本文系统讲解如何利用现有源码快速开发商城、点餐、家政类微信/抖音小程序,涵盖环境搭建、核心功能实现、多平台部署与优化,提供完整技术方案。实战导向,助力开发者高效入门与落地。
|
3月前
|
小程序 PHP 图形学
热门小游戏源码(Python+PHP)下载-微信小程序游戏源码Unity发实战指南​
本文详解如何结合Python、PHP与Unity开发并部署小游戏至微信小程序。涵盖技术选型、Pygame实战、PHP后端对接、Unity转换适配及性能优化,提供从原型到发布的完整指南,助力开发者快速上手并发布游戏。
|
6月前
|
存储 前端开发 安全
病历单生成器在线制作,病历单生成器app,HTML+CSS+JS恶搞工具
本项目为医疗病历模拟生成器,旨在为医学教学和软件开发测试提供数据支持,严格遵守《医疗机构病历管理规定》。
|
6月前
|
存储 前端开发 JavaScript
仿真银行app下载安装, 银行卡虚拟余额制作app,用html+css+js实现逼真娱乐工具
这是一个简单的银行账户模拟器项目,用于学习前端开发基础。用户可进行存款、取款操作,所有数据存储于浏览器内存中
|
6月前
|
前端开发 容器
处方单图片生成器, 处方单在线制作免费,js+css+html恶搞神器
这是一个电子处方模拟生成系统,使用html2canvas库实现图片导出功能。系统生成的处方单包含多重防伪标识,并明确标注为模拟数据,仅供学习