12.22 wxml语法

1.page页面

  1. 在app.json的pages中可以添加或删除页面

  2. 每个页面由四个文件组件:

  3. *.js : 页面逻辑 *.json: 页面配置,可覆盖app.json中的配置 *.wxml: 页面结构 *.wxss: 页面样式

  4. WXML(WeiXin Markup Language)是框架设计的一套标签语言,结合基础组件、事件系统,可以构建出页面的结构。

2.WXML中常用组件

  1. 视图组件:view

  2. 文本组件:text

  3. 按钮组件:button

  4. 图片组件:image

  5. Block 并不是一个组件,它仅仅是一个包装元素,不会在页面中做任何渲染,只接受控制属性。

  6. 图标组件:icon

BUG:wran按钮不能显示红色背景的原因 新版中的button的type为warn时,只是改变了文字颜色,没有改变button背景色 可以通过修改style:'v2'来解决

![[1280X1280 (56).PNG]]

3.数据绑定

WXML 中的动态数据均来自对应 Page 的 data。

![[1280X1280 (57).PNG]]

![[1280X1280 (58).PNG]]

![[1280X1280 (59).PNG]]

![[1280X1280 (60).PNG]]

![[1280X1280 (61).PNG]]

![[1280X1280 (62).PNG]]

![[7c241047-01fc-4ff4-974f-4ad77915c131.png]]

4.列表渲染

![[5a4085d8-98f9-4106-9bf2-8c1251c7518f.png]]

![[341f497e-6f3a-452b-bee4-47fb7aaf467a.png]]

![[977ca2f7-ecb4-426a-a304-980a7a100292.png]]

![[fdd919a9-b694-4c04-b36b-614adf47b139.png]]

Plain 复制代码
<view  wx:for="{{list}}" wx:key="id" > {{item.id}} </view>
data: {
  arr: ["a","b","c"]
}
<view  wx:for="{{arr}}" wx:key="*this" > {{item}} </view>

循环嵌套

HTML 复制代码
<view class="goodList">
    <view wx:for="{{goodList}}">
        <view class="type">{{item.type}}</view>
        <view wx:for="{{item.list}}" wx:for-item="smallItem" wx:for-index="idx">
        {{smallItem.title}} --- {{idx}}
        </view>
    </view>
</view>

5.条件渲染

![[9a47fe26-220b-4c8e-9cf6-ec8fa47cb710.png]]

![[76d3a67c-1658-40ee-b0d7-292d4b5ae027.png]]

Plain 复制代码
<view hidden="{{true}}">{{newNum}}</view>

![[b8bed575-0e81-4431-b098-9501abb21293.png]]

  1. 面试题:小程序是不是双向数据绑定?
HTML 复制代码
默认情况下,小程序不是双向数据绑定,但是想要实现双向数据绑定,可以给input的value值添加model操作
<input type="text" class="inp" model:value="{{value}}"/>
相关推荐
CHANG_THE_WORLD17 分钟前
python 批量终止进程exe
开发语言·python
古城小栈18 分钟前
从 cargo-whero 库中,找到提升 rust 的契机
开发语言·后端·rust
wenzhangli71 小时前
Ooder A2UI 核心架构深度解析:WEB 拦截层的设计与实现
前端·架构
Gary Studio2 小时前
安卓HAL C++基础-智能指针
开发语言·c++
前端百草阁2 小时前
【前端性能优化全链路指南】从开发编写到构建运行的多维度实践
前端·性能优化
啧不应该啊2 小时前
Day1 Python 与 C 的类型区别
c语言·开发语言
神探小白牙2 小时前
eCharts 多系列柱状图增加背景图
javascript·ecmascript·echarts
女生也可以敲代码2 小时前
AI时代下的50道前端开发面试题:从基础到大模型应用
前端·面试
cen__y2 小时前
Linux07(信号01)
linux·运维·服务器·c语言·开发语言
ZhengEnCi2 小时前
M5-markconv自定义CSS样式指南 📝
前端·css·python