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}}"/>
相关推荐
张拭心3 小时前
编程最强的模型,竟然变成了国产的它
前端·ai编程
爱勇宝3 小时前
2026一人公司生存指南:用AI大模型,90天跑出你的第一条现金流
前端·后端·架构
fe小陈3 小时前
简单高效的状态管理方案:Hox + ahooks
前端
我叫黑大帅3 小时前
Vue3和Uniapp的爱恨情仇:小白也能懂的跨端秘籍
前端·javascript·vue.js
Panzer_Jack3 小时前
如何用 WebGL 去实现一个选取色彩背景图片透明化小工具 - Pick Alpha
前端·webgl
None3213 小时前
【NestJs】使用Winston+ELK分布式链路追踪日志采集
javascript·node.js
GIS之路3 小时前
ArcGIS Pro 中的 Python 入门
前端
树獭非懒4 小时前
告别繁琐多端开发:DivKit 带你玩转 Server-Driven UI!
android·前端·人工智能
兆子龙4 小时前
当「多应用共享组件」成了刚需:我们从需求到模块联邦的落地小史
前端·架构
Qinana4 小时前
从代码到智能体:MCP 协议如何重塑 AI Agent 的边界
前端·javascript·mcp