小程序常用组件

news2024/11/26 20:44:15

一、tabBar

         tabBar的相关设置要设置在app.json中(全局配置)。

        注意:tabBar中的list是数组形式,每一项都是以对象形式存在;

                   list中对象的数量最多5个,最少2个;

                   list中的对象的pagePath和text是必填项;

                   list中的对象设置图片时,图片必须是本地图片。

        更多配置请参考tabBar官方配置文档。

        以下为简单示例:

{
  "entryPagePath": "pages/index/index",
  "pages": [
    "pages/index/index",
    "pages/logs/logs"
  ],
  "window": {
    "navigationBarTextStyle": "black",
    "navigationBarTitleText": "Weixin",
    "navigationBarBackgroundColor": "#ffffff"
  },
  "tabBar": {
    "color": "#333",
    "selectedColor": "#ff5123",
    "backgroundColor": "#eeeeee",
    "list": [{
      "pagePath": "pages/index/index",
      "text": "首页",
      "iconPath": "/static/tabbar/logs-default.png",
      "selectedIconPath": "/static/tabbar/logs-active.png"
    },{
        "pagePath": "pages/logs/logs",
        "text": "日志",
        "iconPath": "/static/tabbar/home-default.png",
        "selectedIconPath": "/static/tabbar/home-active.png"
    }]
  },
  "style": "v2",
  "componentFramework": "glass-easel",
  "sitemapLocation": "sitemap.json",
  "lazyCodeLoading": "requiredComponents"
}

  

二、navigator

        navigator是小程序中实现路由跳转的组件,常用属性为:

                url:跳转路径(支持绝对和相对路径,但不支持空);

                open-type:跳转方式(switchTab代表跳转的是tabBar的页面);

                hover-class:点击态的样式。

        更多属性参考navigator官方文档。

<!-- 页面跳转,url 相对路径 -->
<navigator open-type="switchTab" url="../logs/logs">跳转log</navigator>
<!-- 页面跳转,url 绝对路径 -->
<!-- open-type switchTab:跳转到页面是tabBar的页面 -->
<navigator open-type="switchTab" url="/pages/logs/logs">跳转log</navigator>
<!-- hover-class none为禁用;也可直接设置为class类名,设置点击时样式 -->
<navigator url="/pages/demo/demo">跳转demo</navigator>
<navigator hover-class="none" url="/pages/demo/demo">跳转demo</navigator>
<navigator hover-class="active" url="/pages/demo/demo">跳转demo</navigator>

三、image

        image 组件是一个有默认大小(320*240)的盒子。

        给image设置mode属性的值,可设置图片的缩放格式。

           mode默认值是scaleFill,图片拉伸填满容器;

           mode设置值为aspectFit保证缩放比,使图片长边显示出来;

           mode设置值为aspectFill保证缩放比,使图片短边显示出来。 

        使用原则:指定容器的大小(根据设计稿,设置image的宽高尺寸)。

        更多属性参考image官方文档。

<!-- image src支持绝对路径和相对路径 -->
<image src="../../static/uploads/goods_1.jpg"></image>
<image src="/static/uploads/goods_1.jpg"></image>
<!-- image mode 缩放模式 -->
<image class="pic" src="/static/uploads/goods_1.jpg"></image>
<image class="pic" mode="aspectFit" src="/static/uploads/goods_1.jpg"></image>
<image class="pic" mode="aspectFill" src="/static/uploads/goods_1.jpg"></image>

.pic {
  width: 200rpx;
  height: 200rpx;
  background-color: pink;
}

 

四、swiper

        swiper:滑块容器,只能嵌套swiper-item

        swiper-item:滑块单元,可以嵌套任何内容

        注意:swiper必须和swiper-item搭配使用;

                   swiper有默认高度150px。

        更多属性查看swiper官方文档。

<swiper indicator-dots indicator-active-color="red">
  <swiper-item><image src="/static/uploads/slide_1.jpg"></image></swiper-item>
  <swiper-item><image src="/static/uploads/slide_2.jpg"></image></swiper-item>
  <swiper-item><image src="/static/uploads/slide_3.jpg"></image></swiper-item>
  <swiper-item><image src="/static/uploads/slide_4.jpg"></image></swiper-item>
</swiper>

swiper {
  width: 750rpx;
  height: 320rpx;
}
swiper image {
  width: 750rpx;
  height: 320rpx;
}

 

五、表单组件

        1、input

        基本与html的input输入框相同,通过password属性设置密码样式。

        更多属性参考input官方文档。

  <view class="form-field">
    <label for="">姓名:</label>
    <view class="field">
      <input type="text" placeholder="请输入姓名"/>
    </view>
  </view>
  <view class="form-field">
    <label for="">密码:</label>
    <view class="field">
      <input type="text" password placeholder="请输入密码"/>
    </view>
  </view>

 

        input的type设置为nickname,可快捷使用微信昵称。

<input type="nickname" placeholder="请输入姓名"/></view>

 

        若本地调试不显示微信昵称框,查看本地调试库版本,选择大于nickname的版本。

         

        2、 单选框

        与html的radio基本相同;

        不同情况是:在有多个选项,但只能选择一个的时候,要用radio-group包裹住radio。

        更多属性参考radio官方文档和radio-group官方文档。

  <view class="form-field">
    <label for="">性别:</label>
    <view class="field">
      <radio-group bindchange="changeRadio">
        <label><radio value="1"/>男  </label>
        <label><radio value="0"/>女  </label>
      </radio-group>
    </view>
  </view>
Page({
  changeRadio(e) {
    console.log(e.detail.value)
  }
})

 

        3、复选框 

         复选框同单选框。

        更多属性参考checkbox官方文档和checkbox-group官方文档。

  <view class="form-field">
    <label for="">爱好:</label>
    <view class="field">
      <checkbox-group bindchange="changeCheckBox">
        <label><checkbox value="1"/>旅游  </label>
        <label><checkbox value="2"/>阅读  </label>
        <label><checkbox value="3"/>听歌  </label>
      </checkbox-group>
    </view>
  </view>
Page({
  changeCheckBox(e) {
    console.log(e.detail.value)
  }
})

 

        4、picker--省市区

        通过设置picker的mode属性为region,即可使用省市区选择器。

        注意:使用时,必须给picker中设置值,否则无法显示,也不能点击。

                   需要通过bindchange更新页面的数据值。

        更多属性参考picker官方文档。

  <view class="form-field">
    <label for="">籍贯:</label>
    <view class="field">
      <picker mode="region" bindchange="changeRegion">
        {{ regionText || '请选择省市区'}}
      </picker>
    </view>
  </view>
Page({
  data: {
    regionText: '请选择省市区'
  },
  changeRegion(e) {
    const text = e.detail.value.join(' ')
    this.setData({
      regionText: text
    })
  }
})

 

         5、picker--日期选择

        通过设置picker的mode属性为region,即可使用省市区选择器。

        更多属性参考picker官方文档。

  <view class="form-field">
    <label for="">生日:</label>
    <view class="field">
      <picker mode="date" start="1960-01-01" bindchange="changeDate">
        {{dateText || '请选择生日'}}
      </picker>
    </view>
  </view>
Page({
  data: {
    dateText: '请选择生日'
  },
  changeDate(e) {
    this.setData({
      dateText: e.detail.value
    })
  }
})

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1456700.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Docker部署Redis哨兵模式

目录结构 先按照这个目录结构创建。 redis主从配置 redis-master主配置文件 #允许远程连接 bind 0.0.0.0# 设置Redis实例的端口号 port 6379# 设置Redis实例的密码 requirepass 123456# 启用持久化 appendonly yes redis-slave1从配置文件 #允许远程连接 bind 0.0.0.0# 设…

ALINX黑金AXU3EGB 开发板用户手册RS485通信接口图示DI RO信号方向标识错误说明

MAX3485这类RS485芯片&#xff0c;DI是TTL信号输入&#xff0c;RO是TTL信号输出 如下图是MAX3485手册规格书。 因此 ALINX黑金AXU3EGB 用户手册 Page 43页 图 3-11-1 PL 端 485 通信的连接示意图&#xff0c;MAX3485芯片的DI RO信号输入输出标识方向是错误的&#xff0c;应为蓝…

【Linux】---Linux下基本指令(2)

目录 一、指令详细介绍1.1 cat 指令1.2 echo 指令1.3 more 指令1.4 less 指令1.5 head 指令1.6 tail 指令1.7 date 指令1.8 cal 指令1.9 find 指令1.10 grep 指令1.11 zip/unzip 指令1.12 tar 指令1.13 uname –r 指令&#xff1a; 一、指令详细介绍 1.1 cat 指令 语法&#…

ABINet原理讲解以及运行

论文地址&#xff1a;https://arxiv.org/pdf/2103.06495.pdf 代码地址&#xff1a;https://github.com/FangShancheng/ABINet 前言 OCR技术经历了是从传统方法到深度学习方法的一个过程&#xff0c;所以在这里我也简述一下传统的OCR技术方法。传统OCR方法在简单场景下效果良…

算法沉淀——BFS 解决最短路问题(leetcode真题剖析)

算法沉淀——BFS 解决最短路问题&#xff08;leetcode真题剖析&#xff09; 01.迷宫中离入口最近的出口02.最小基因变化03.单词接龙04.为高尔夫比赛砍树 BFS&#xff08;广度优先搜索&#xff09;是解决最短路径问题的一种常见算法。在这种情况下&#xff0c;我们通常使用BFS来…

智胜未来,新时代IT技术人风口攻略-第五版(弃稿)

文章目录 前言鸿蒙生态科普调研人员画像高校助力鸿蒙高校鸿蒙课程开设占比教研力量并非唯一原因 企业布局规划全盘接纳仍需一段时间企业对鸿蒙的一些诉求 机构入场红利机构鸿蒙课程开设占比机构对鸿蒙的一些诉求 鸿蒙实际体验高校用户群体场景分析企业用户群体场景分析培训机构…

东方博宜 1395. 小丽找数?

东方博宜 1395. 小丽找数&#xff1f; #include<iostream> using namespace std; int main() {int x ;cin >> x ;int cnt 0 ;for (int i 1 ; i < x ; i){ int y i ;int sum 0;while(y > 0){sum y%10 ;y / 10 ;}if(sum%5!0 &&sum%2!0)cnt 1 …

多线程---乐观锁、悲观锁

乐观锁&#xff08;Optimistic Locking&#xff09; 乐观锁则是一种假定数据在并发访问时很少会发生冲突的锁定策略。因此&#xff0c;乐观锁在访问数据时不会立即对数据进行加锁&#xff0c;而是在更新数据时检查数据是否被其他线程修改过。如果数据没有被修改过&#xff0c;则…

shell脚本文本三剑客grep,sed,awk

1. 正则表达式&#xff0c;又称正规表达式、常规表达式 使用字符串来描述、匹配一系列符合某个规则的字符串 正则表达式组成&#xff1a; 普通字符包括大小写字母、数字、标点符号及一些其他符号。 元字符是指在正则表达式中具有特殊意义的专用字符 man 7 regex 可以使用man手…

达梦数据库——数据迁移sqlserver-dm报错问题_未完待续

记录SQL server到达梦数据迁移过程中遇到的问题&#xff0c;持续更新中... 报错情况一&#xff1a;Sql server迁移达梦连接报错’驱动程序无法通过使用安全套接字Q层(SSL)加密与SQL Server 建立安全连接。错误:“The server selected protocol version TLS10 is not accepted b…

2024开工大吉,便宜寄快递该怎么选呢?

随着春节的结束&#xff0c;大部分人回到了工作的岗位&#xff0c;相信许多人还沉浸在过年的喜悦的氛围中呢&#xff0c;但是我们可以期盼下一个春节的到来了&#xff0c;言归正传&#xff0c;工作中总会收发快递了&#xff0c;尤其是最近&#xff0c;需要联络客户的感情了&…

vtkBoarderWidget及图片坐标包含计算

开发环境&#xff1a; Windows 11 家庭中文版Microsoft Visual Studio Community 2019VTK-9.3.0.rc0vtk-example demo解决问题&#xff1a;移动图片到坐标轴的中心&#xff0c;创建一个vtkBoarderWidget控件&#xff0c;移动控件&#xff0c;计算控件与图片的包含关系 关键点…

【linux网络的综合应用】补充网关服务器搭建,综合应用SNAT、DNAT转换,dhcp分配、dns分离解析,nfs网络共享以及ssh免密登录

实验拓朴图&#xff1a; 1&#xff09;网关服务器&#xff1a;ens36&#xff1a;12.0.0.254/24&#xff0c;ens33&#xff1a;192.168.100.254/24&#xff1b;Server1&#xff1a;192.168.100.101/24&#xff1b;PC1和server2&#xff1a;自动获取IP&#xff1b;交换机无需配置…

SSL数据加密一定能保证数据的完整性吗?

SSL数据加密是一种常见的网络安全措施&#xff0c;用于保护数据在传输过程中的安全。它通过使用加密算法将数据转换为密文&#xff0c;然后在传输过程中对数据进行保护&#xff0c;以防止数据被窃取或篡改。然而&#xff0c;尽管SSL数据加密可以提供一定程度的数据保密性&#…

光流方向以及 remap 重映射的理解

Date: 2023-09-07 省流&#xff1a;光流法计算prev 到next 的flow&#xff0c;之后flow &#xff08;加上当前位置坐标&#xff09;生成flow_map&#xff0c;利用flow_map 和OpenCV remap 函数&#xff0c;可以将next remap 得到 prev&#xff0c;即remap 后一帧得到前一帧图像…

spring boot学习第十三篇:使用jsonrpc

因为我学习spring boot会有很多内容&#xff0c;所以和spring boot有关的文章使用的pom.xml和application.yml这2个文件的内容就全列出来&#xff0c;不用再单独抽出来了&#xff0c;单独抽出来有点麻烦也不方便学习。 1、pom.xml文件内容如下&#xff1a; <?xml version…

[深度学习] 卷积神经网络“卷“在哪里?

​ &#x1f308; 博客个人主页&#xff1a;Chris在Coding &#x1f3a5; 本文所属专栏&#xff1a;[深度学习] ❤️ 热门学习专栏&#xff1a;[Linux学习] ⏰ 我们仍在旅途 目录 1.卷积的定义 2.卷积的"卷"在哪里 3.什么又是卷积神…

【HTML】SVG实现炫酷的描边动画

前沿 今天闲来无事&#xff0c;看到Antfu大佬的个性签名&#xff0c;觉得还是非常炫酷的&#xff0c;于是也想要搞一个自己的个性签名用来装饰自己的门面&#xff0c;不过由于手写的签名太丑了&#xff0c;遂放弃。于是尝试理解原理&#xff0c;深入研究此等密法&#xff0c;终…

读写分离的利器——MySQL Proxy

0 引言 MySQL Proxy是一个位于客户端和MySQL服务器端之间的程序&#xff0c;通过它可以实现监听和管理客户端与MySQL服务器端之间的通信&#xff0c;最大的作用是实现数据库的读写分离&#xff0c;从而达到负载均衡的目的。 MySQL Proxy的常用用途包括负载平衡、故障分析、查…

纯前端低代码平台demo,vue框架,nodejs,简单的pm2纯前端部署实践

文章目录 目录结构说明本地运行项目启动后的页面demo前端部署打包pm2nginx 后话 前段时间开发了一个纯前端的低代码平台demo&#xff0c;vue框架&#xff0c;nodejs&#xff0c;pm2纯前端部署实践。为此记录一下开发过程以及各方面遇到的问题&#xff0c;并作说明。 表单用了若…