首页  >  文章  >  微信小程序  >  微信小程序页面开发

微信小程序页面开发

hzc
hzc转载
2020-07-02 09:46:463199浏览

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

我觉得 WXML 通过三个纬度来介绍:纵向、横向、逻辑处理 . 这里先介绍个简单介绍,它们也是开发小程序的基础,需要的时候可以根据文档具体使用, 以后介绍具体功能时候再扩展。

纵向

纵向: 也就是组件的组合,包括:系统组件、第三方组件、自定义组件 .

例如:

<view class="container">
  <view class="userinfo">
      <image src="{{userInfo.avatarUrl}}" background-size="cover"></image>
      <text class="userinfo-nickname"> 用户名 </text>
  </view>
</view>

系统组件:

  • 视图容器:cover-image、cover-view、movable-area、movable-view、scroll-view、swiper、swiper-item、view

  • 基础内容:icon、progress、rich-text、text

  • 表单组件:button、checkbox、checkbox-group、editor、form、input、label、picker、picker-view、picker-view-column、radio、radio-group、slider、switch、textarea

  • 导航:functional-page-navigator、navigator

  • 媒体组件:audio、camera、image、live-player、live-pusher、video

  • 地图:map

  • 画布:canvas

  • 开放能力:ad、official-account、open-data、web-view

  • 原生组件说明:native-component

  • 无障碍访问:aria-component

  • 导航栏:navigation-bar

  • 页面属性配置节点:page-meta

具体使用参考:
https://developers.weixin.qq.com/miniprogram/dev/component/native-component.html

第三方组件: 例如 WeUI 组件库等

自定义组件:自定义组件拥有自己的 wxml 模板和 wxss 样式

横向

横向: 组件的属性

属性名 描述
id 唯一标识
class 样式表
style 内联样式
hidden 隐藏
data-* 事件传递数据
bind* /catch* 组件事件

逻辑处理

逻辑处理: 根据绑定好的数据决定怎么显示视图

数据绑定

<!--wxml-->
<view> {{message}} </view>
// page.js
Page({
  data: {
    message: 'Hello MINA!'
  }
})

列表渲染

<!--wxml-->
<view wx:for="{{array}}"> {{item}} </view>
// page.js
Page({
  data: {
    array: [1, 2, 3, 4, 5]
  }
})

条件渲染

<!--wxml-->
<view wx:if="{{view == &#39;WEBVIEW&#39;}}"> WEBVIEW </view>
<view wx:elif="{{view == &#39;APP&#39;}}"> APP </view>
<view wx:else="{{view == &#39;MINA&#39;}}"> MINA </view>
// page.js
Page({
  data: {
    view: 'MINA'
  }
})

用于包裹视图组件的 block

如果 wx:for、wx:if 要渲染视图容器,可以用 block 标签包裹,block 标签不是一个组件,只是一个用于包装的元素,不会被渲染,并且只接受 wx:.. 控制属性。

block 和 wx:if:

<block wx:if="{{true}}">
  <view> view1 </view>
  <view> view2 </view>
</block>

block 和 wx:for:

<block wx:for="{{[1, 2, 3]}}">
  <view> {{index}}: </view>
  <view> {{item}} </view>
</block>

推荐教程:《微信小程序

以上是微信小程序页面开发的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:jianshu.com。如有侵权,请联系admin@php.cn删除