微信小程序 | 小程序WXSS-WXML-WXS

这篇具有很好参考价值的文章主要介绍了微信小程序 | 小程序WXSS-WXML-WXS。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

🖥️ 微信小程序 专栏:小程序WXSS-WXML-WXS
🧑‍💼 个人简介:一个不甘平庸的平凡人🍬

✨ 个人主页:CoderHing的个人主页

🍀 格言: ☀️ 路漫漫其修远兮,吾将上下而求索☀️

👉 你的一键三连是我更新的最大动力❤️


目录

一、WXSS编写程序样式

小程序的样式写法

WXSS支持的选择器

WXSS优先级与CSS类似,权重如图

wxss的拓展 - 尺寸单位

二、Mustache语法绑定

Mustache语法

三、WXML的条件渲染

逻辑判断 wx:if - wx:elif - wx:else

hidden属性

四、WXML的列表渲染

列表渲染 - wx:for 基础

block标签

列表渲染 - item / index 名称

列表渲染 - key作用

五、WXS语法基本使用

什么是WXS?

WXS的写法


一、WXSS编写程序样式

小程序的样式写法

  • 页面样式的三种写法:
  • 行内样式、页面样式、全局样式
  • 三种样式都可以作用于页面的组件
  • 如果有相同的样式 那么优先级如下:
  • 行内样式 > 页面样式 > 全局样式

wxss怎么应用于某个wxml文件,小程序系列,微信小程序,小程序,前端,javascript,前端框架

JavaScript
// 代码展示
<!-- 1.应用全局样式 -->
<view class="title">learn wxss title</view>

<!-- 2.页面样式 -->
<view class="message">learn wxss message 页面样式</view>

<!-- 3.行内样式 -->
<view style="color: purple; font-size: 25px;">inline style 行内样式</view>

WXSS支持的选择器

目前支持的选择器:

wxss怎么应用于某个wxml文件,小程序系列,微信小程序,小程序,前端,javascript,前端框架 

WXSS优先级与CSS类似,权重如图

跟Css一样(依然有权重)

wxss怎么应用于某个wxml文件,小程序系列,微信小程序,小程序,前端,javascript,前端框架

wxss的拓展 - 尺寸单位

跟Css中最大的区别!

  • 尺寸单位
  • rpx(responsive pixel):可以根据屏幕宽度进行自适应,规定屏幕宽为750rpx
  • 如在Iphone6上,屏幕宽为375px 共有750物理像素,则750rpx=375px=750物理像素
  • 1rpx = 0.5px = 1物理像素

wxss怎么应用于某个wxml文件,小程序系列,微信小程序,小程序,前端,javascript,前端框架

注:开发微信小程序时设计师可以用Iphone6作为视觉稿的标准

二、Mustache语法绑定

Mustache语法

  • WXML基本格式:
  • 类似于HTML代码,可以写成 单标签 也可以写成 双标签
  • 必须有 严格的闭合: 没有闭合会导致编译错误
  • 大小写敏感:class和Class是不同的属性
  • 开发中,界面上展示的数据并不是写死的,会根据服务器返回的数据,或用户的操作来改变
  • 如使用原生Js或Jq的话,需要通过操作DOM来进行界面的更新
  • 小程序和Vue一样,提供插值语法:Mustache语法(双大括号)

wxss怎么应用于某个wxml文件,小程序系列,微信小程序,小程序,前端,javascript,前端框架 

三、WXML的条件渲染

逻辑判断 wx:if - wx:elif - wx:else

  • 在某些需求中,我们需要根据条件来决定一些内容是否渲染:
  • 当条件为true时, view组件会渲染出来
  • 当条件为false时, view组件不会渲染出来

wxss怎么应用于某个wxml文件,小程序系列,微信小程序,小程序,前端,javascript,前端框架

hidden属性

  • hidden属性:
  • hidden是所有组件都默认拥有的属性
  • 当hidden属性为true时,组件隐藏
  • 为false时,组件显示出来

JavaScript
<view hidden="{{false}}">哈哈哈</view>

wxss怎么应用于某个wxml文件,小程序系列,微信小程序,小程序,前端,javascript,前端框架 

  • hidden和wx:if的区别
  • hidden控制显示和隐藏,是控制是否添加hidden属性
  • wx:if是控制组件是否被渲染

四、WXML的列表渲染

列表渲染 - wx:for 基础

  • 为什么需要使用wx:for
  • 在实际开发中,服务器经常返回各种 列表数据 我们不可能一一从列表中取出数据进行展示;
  • 所以我们需要通过 for循环的方式,遍历所有数据,一次性进行展示;
  • 在组件中,可以使用wx:for来遍历一个数组(字符串 - 数字)
  • 默认情况下,遍历后在wxml中可以使用一个 变量index,保存的当前遍历数据的下标值
  • 数组中对应某项的数据,使用 变量名item获取

wxss怎么应用于某个wxml文件,小程序系列,微信小程序,小程序,前端,javascript,前端框架

JavaScript
代码展示
<!-- 4.列表展示 -->
<view>
<!-- 4.1 wx:for 基本使用 -->
<!-- 遍历data中的数组 -->
<view class="books">

  <!-- <view>{{ books[0].name }}</view> -->
  <!-- wx:key="*this" 表示当前本身 -->
  <block wx:for="{{ books }}" wx:key="id">
  <!-- item表示每一项的内容,index 表示 每一项的索引 -->
    <view>{{item.name}} - {{ item.price }}</view>
  </block>
</view>

<!-- 遍历数字 -->
<view class="number">
  <block wx:for="{{ 10 }}" wx:key="*this">
    <view>{{ item }}</view>
  </block>
</view>

<!-- 遍历字符串 -->
<view class="str">
  <block wx:for="coderhing" wx:key="*this">
    <view>{{ item }}</view>
  </block>
</view>

</view>

block标签

  • 什么是block标签? => 类似于 Vue中的 template
  • 在一些情况下,我们使用wx:if 或 wx:for时,可能需要包裹一组 组件标签
  • 我们希望对这一组组件标签进行整体的操作,这个时候怎么办?
  • 注:
  • <block /> 并不是一个组件,它仅仅是一个 包装元素 不会在页面中做任何渲染 只接受控制
  • 使用block有两个好处:
  • 将需要进行遍历或判断的内容进行包裹
  • 将遍历和判断的属性放在block标签中,不影响普通属性的阅读,提高代码的可读性.

wxss怎么应用于某个wxml文件,小程序系列,微信小程序,小程序,前端,javascript,前端框架 

列表渲染 - item / index 名称

  • 默认情况下,item - index 的名字是固定的
  • 但在某些情况下,我们可能想要使用其他名称
  • 或者出现多层遍历时,名字重复
  • 这个时候,我们可以指定item和index的名称:

wxss怎么应用于某个wxml文件,小程序系列,微信小程序,小程序,前端,javascript,前端框架 

JavaScript
代码展示:
<!-- item/index 名称 有些特殊情况 我们想要把 item/index 进行重命名-->
<view class="bookess">
  <!-- wx:for-item="book" 这样做的话 就不叫item了 就叫做 book -->
  <block wx:for="{{books}}" wx:key="id" wx:for-item="book" wx:for-index="i">
    <view>{{book.name}} - {{book.price}} - {{i}}</view>
  </block>
</view>

列表渲染 - key作用

  • 我们看到,当使用wx:for时,会报一个警告:
  • 我们可以添加 key来提供性能
  • 为什么需要这个key属性?
  • 其实和小程序内部 也使用了 虚拟DOM有关系(和Vue React很相似)
  • 当某曾有很多相同的节点时,(也就是列表节点时)我们希望 插入 删除一个新的节点 可以更好的复用节点
  • wx:key的值以两种形式提供
  • 字符串, 代表在 for循环的array中 item的某个property,该property的值需要是列表中唯一的字符串或数字,并且不能动态进行改变
  • 保留关键字 *this 代表在for循环中的item本身,这种表示需要 item本身是一个唯一的字符串或数字

五、WXS语法基本使用

什么是WXS?

  • WXS(weixin Script) 是小程序的一套脚本语言,结合WXML 可以构建出页面的结构.
  • 官方:WXS与Js是不同的语言,有自己的语法,并不和Js一致(不过基本一致)
  • 为什么要设计WXS语言?
  • 在WXML中是不能直接调用Page/Component中定义的函数的
  • 但在某些情况,我们可以希望使用函数来处理WXML中的数据(类似于Vue中的过滤器)这个时候就使用WXS
  • WXS使用的限制和特点:
  • WXS不依赖于运行时的基础库版本,可以在所有版本的小程序中运行
  • WXS的运行环境和其他Js代码是隔离的,WXS中不能调用其他Js文件中定义的函数,也不能调用小程序提供的API.
  • 由于运行环境的差异,在IOS设备上小程序内的WXS会比Js代码快2~20倍,在安卓设备商 运行效率无明显差异

WXS的写法

  • WXS有两种写法:
  • 在<wxs>标签中
  • 在以.wxs结尾的文件中
  • <WXS>标签的属性:

wxss怎么应用于某个wxml文件,小程序系列,微信小程序,小程序,前端,javascript,前端框架 

  • 每一个.wxs文件和<wxs>标签都是一个单独的模块
  • 每个模块有自己的独立作用域.在每个模块里面定义的变量与函数,默认为私有的.对其他模块不可见
  • 一个模块如果想要向外暴露其内部的私有变量和函数,只能通过 module.exports 实现

方式一: wxs标签写法

wxss怎么应用于某个wxml文件,小程序系列,微信小程序,小程序,前端,javascript,前端框架

方式二: .wxs文件写法

wxss怎么应用于某个wxml文件,小程序系列,微信小程序,小程序,前端,javascript,前端框架

 

wxss怎么应用于某个wxml文件,小程序系列,微信小程序,小程序,前端,javascript,前端框架文章来源地址https://www.toymoban.com/news/detail-818507.html

到了这里,关于微信小程序 | 小程序WXSS-WXML-WXS的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序 搜索框实现模糊搜索(带模拟数据,js,wxml,wxss齐全)

    最近在做一个小程序的页面,搜索框困扰了我很久,今天终于把搜索框给做了出来,记录一下过程 wxml js wxss

    2024年02月20日
    浏览(50)
  • 无插件,简单配置prettier,将微信小程序的wxml和wxss当作html和css进行格式化

    使用prettier的项目、安装了prettier扩展的vscode和微信开发者工具。 prettier是根据默认的解析器对相应的文件进行处理,我们可以自定义什么格式的文件用什么解析器。具体看 documentSelectors。 只列出有关的配置 编辑器的配置 设置wxml和wxss文件的默认格式化工具为prettier 配置pre

    2024年02月09日
    浏览(63)
  • 微信小程序wxss background

    微信小程序里遇到一个关于background的小问题,记录一下啦。 看,这是问题: 解决的方法: 其实人家已经告诉了解决方法 但是我愿意再抄一遍 1.把background属性 写为 采用 image 组件 沉底的方式实现 2.微信小程序view background-image 不能够直接显示本地,但是可以 直接显示网络图

    2024年02月16日
    浏览(55)
  • 微信小程序-----wxss模版样式

    目录 前言 一、WXSS 1. 什么是 WXSS 2. WXSS 和 CSS 的关系 二、rpx 1. 什么是 rpx 尺寸单位 2. rpx 的实现原理 3. rpx 与 px 之间的单位换算 三、样式导入 1. 什么是样式导入 2. @import 的语法格式 四、全局样式和局部样式 1. 全局样式 2. 局部样式         上一期我们学习了wxml的模版语法,

    2024年01月17日
    浏览(65)
  • 微信小程序 样式和全局配置 WXSS

    wxss 把屏幕分为750个物理像素,大屏大,小屏小,随着设备不一致自动适配 推荐使用iPhone6作为标准,1个rpx = 0.5个px,把px乘以2就是rpx的参数 导入外部样式表  样式  权重一样时,局部样式可以覆盖全局样式 导航栏区域 navigationBar 背景区域 backgroud 页面主体区域 可以配置【导

    2024年02月15日
    浏览(63)
  • 微信小程序中使用SCSS编译WXSS

    旧版本的微信小程序是需要导入sass,新版本直接使用配置 !!!!!!!建议二选一去使用,防止冲突目前我使用的是旧版本的配置Sass!!!!!!!!!! 新版本开发者工具中的隐式设置可直接编译插件配置,在project.config.json加入以下代码即可编译SASS(参考项目配置文件 | 微信开放文档) 目前支

    2024年04月16日
    浏览(50)
  • 微信小程序如何使用scss编译wxss文件

    微信小程序开发者工具集成了 vscode 编辑器,可以使用 vscode 中众多的插件,为我们开发微信小程序提供了极大的便利。我们可以借助 easysass 插件实现在微信开发中使用 sass,安装步骤如下。 1.在 vscode 中搜索 easysass 插件并安装 2.导入已安装的vscode扩展 微信开发者工具 视图

    2024年02月08日
    浏览(62)
  • 【微信小程序】wxml模板的使用

    目录 一,wxml模板 1.什么是 WXML 2. 什么是 WXSS 3.WXSS 和 CSS 的区别 4 .JS 逻辑交互 二,小程序的宿主环境 1.宿主环境简介 1.什么是宿主环境 2. 小程序的宿主环境 3.宿主环境包含内容 2 通信模型

    2024年02月04日
    浏览(49)
  • 微信小程序编译.wxml文件编译错误

    [ WXML 文件编译错误] ./pages/mine/wallet.wxml Bad value with message 1 | view 刚开始找了半天都没发现错误,后面才发现原来是我写页面的时候,插值语法忘记换成后端传过来的数据了, 无语子- - 。 把插值语法中的中文改掉就不会报错了,不过不同原因都会报这个错误,错误原因大部分

    2024年02月15日
    浏览(55)
  • 微信小程序wxml使用过滤器

    如何在微信小程序wxml使用过滤器/格式化字串?(常用就是格式化字符串) 犹如Angular使用pipe管道(过滤器)这样子方便,用的最多就是时间格式化。 下面是实现时间格式化的方法和步骤: 插入代码: 在 wxml 中使用

    2024年02月07日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包