一:多级联动

微信小程序中的多级联动

这里用到的案例是城市选择器

先上代码:

.wxml

{{nian}}--{{yue}}--{{ri}}

隐藏显示

测试

更新数据

隐藏显示

{{item}}

{{item}}

{{item}}

.js

var utils = require('../../utils/util');

const p = [];//省

const a = [];//市

const c = [];//区,县

var riqi;//日期

var val;//下标

Page({

data: {

boxHide:"box-show",

showBox:"hide-show"

},

onLoad: function (options) {

var dataC = utils.getData();

p.push(dataC.p);//province

a.push(dataC.a);//area

c.push(dataC.c);//city

},

bindChange: function (e) {

val = e.detail.value;

riqi = this.data;

this.setData({

months: c[0][riqi.years[val[0]]],

days: a[0][riqi.months[val[1]]]

})

},

yes: function () {//获取城市信息

if (typeof (riqi) == "undefined") {

this.setData({

nian: "黑龙江省",

yue: "大兴安岭地区",

ri: "塔河县"

})

} else {

this.setData({

nian: this.data.years[val[0]],

yue: this.data.months[val[1]],

ri: this.data.days[val[2]]

})

}

},

cancelPick: function () {

this.setData({

boxHide:"box-show",

showBox:"hide-show"

})

},

enterPick: function () {

console.log(c[0][p[0][0]][0]);

this.setData({

boxHide:"box-hide",

showBox:"show-box",

years: p[0],

months: c[0][p[0][0]],

days: a[0][c[0][p[0][0]][0]]

})

},

enter: function () {

if (typeof (riqi) == "undefined") {

this.setData({

nian: "黑龙江省",

yue: "大兴安岭地区",

ri: "塔河县"

})

} else {

this.setData({

nian: this.data.years[val[0]],

yue: this.data.months[val[1]],

ri: this.data.days[val[2]]

})

}

}

});

.wxss

.picker-box {

position: fixed;

width: 100%;

top: 0;

left: 0;

right: 0;

bottom: 0;

background-color: rgba(0, 0, 0, 0.5);

}

.box-hide {

z-index: -12;

}

.box-show {

z-index: -1;

}

.show-box{

z-index: 1;

}

picker-view{

position: absolute;

bottom: 0;

}

.hide-show{

z-index: -13;

}

首先讲解下.wxml部分代码:

页面分为2个部分,第一个部分是页面加载时候显示给用户的组件。第二个部分是被第一部分覆盖隐藏的城市选择器部分。

其次是.wxss部分代码:

在该部分里面设置页面渲染时候,分层次显示的组建

picker-view-master.zip

二:自定义圆形进度条

无图无真相,先上图:

实现思路,先绘制底层的灰色圆圈背景,再绘制上层的蓝色进度条。

代码实现:

JS代码:

Page({

data: {},

onLoad: function (options) {

// 页面初始化 options为页面跳转所带来的参数

},

onReady: function () {

// 页面渲染完成

var cxt_arc = wx.createCanvasContext('canvasArc');//创建并返回绘图上下文context对象。

cxt_arc.setLineWidth(6);

cxt_arc.setStrokeStyle('#d2d2d2');

cxt_arc.setLineCap('round')

cxt_arc.beginPath();//开始一个新的路径

cxt_arc.arc(106, 106, 100, 0, 2*Math.PI, false);//设置一个原点(106,106),半径为100的圆的路径到当前路径

cxt_arc.stroke();//对当前路径进行描边

cxt_arc.setLineWidth(6);

cxt_arc.setStrokeStyle('#3ea6ff');

cxt_arc.setLineCap('round')

cxt_arc.beginPath();//开始一个新的路径

cxt_arc.arc(106, 106, 100, -Math.PI * 1 / 2, Math.PI*6/5, false);

cxt_arc.stroke();//对当前路径进行描边

cxt_arc.draw();

},

onShow: function () {

// 页面显示

},

onHide: function () {

// 页面隐藏

},

onUnload: function () {

// 页面关闭

}

})

页面布局:

中间

CSS样式:

.cir{

display: inline-block;

margin-top: 20rpx;

}

.top{

text-align: center

}

.cc{

margin-top: -120px;

}

微信小程序进度条组件自定义数字_微信小程序小技巧系列《十三》多级联动,自定义圆形进度条 ... ......相关推荐

  1. 微信小程序进度条组件自定义数字_微信小程序之圆形进度条(自定义组件)

    前言 昨天在微信小程序实现了圆形进度条,今天想把这个圆形进度条做成一个组件,方便以后直接拿来用. 根据官方文档自定义组件一步一步来 创建自定义组遇新是直朋能到件 第一步创建项遇新是直朋能到分览目结构 ...

  2. vue用公共组件页面传值_微信小程序页面传值、组件间通信总结

    小程序是一种新的开放能力,开发者可以快速地开发一个小程序.小程序可以在微信内被便 捷地获取和传播,同时具有出色的使用体验.对于微信小程序,前端开发应该不陌生,目前也 是非常火,很多公司都会进行开发.对 ...

  3. 小程序在wxml里转数字_2020年利用名片小程序开启数字化营销的方法

    数字营销是什么意思?所谓数字营销,就是指借助于互联网.电脑通信技术和数字交互式媒体来实现营销目标的一种营销方式.数字营销将尽可能地利用先进的计算机网络技术,以更有效.省钱地谋求新的市场的开拓和新的消费 ...

  4. 微信小程序python解析获取用户手机号_微信小程序获取用户手机号

    获取微信用户绑定的手机号,需先调用wx.login接口. 小程序获取code. 后台得到session_key,openid. 组件触发getPhoneNumber 因为需要用户主动触发才能发起获取手 ...

  5. 小程序分享到朋友圈功能_微信小程序开放分享到朋友圈功能

    2020年7月7日(据说是6日深夜),一个很特别的日子,微信低调地放开了一个功能:微信小程序"分享到到朋友圈",这个看似微小的变化,对微信小程序来说意义重大. 用fenng大的话说 ...

  6. 小程序内嵌h5页面分享_微信小程序webview内页面分享

    因为项目原因,之前在微信小程序内部使用 webview 嵌套了 h5 页面,现在要添加一个新的功能,用户在哪个页面进行了分享,被分享的用户从链接进来就跳转到哪个分享页面. 先了解一下 web-view ...

  7. 微信小程序菜品做法展示数据库设计_微信小程序结合后台数据管理实现商品数据的动态展示、维护...

    微信小程序给我们提供了一个很好的开发平台,可以用于展现各种数据和实现丰富的功能,本篇随笔介绍微信小程序结合后台数据管理实现商品数据的动态展示.维护,介绍如何实现商品数据在后台管理系统中的维护管理,并通 ...

  8. 小程序流量主能赚多少_微信:6月1日起调整小程序和公众号流量主广告收入分成比例...

    图片版权所属:站长之家 站长之家(ChinaZ.com) 5月31日 消息:今日,微信广告官方账号"微信广告助手"发布了微信广告流量主分成政策调整公告.微信广告助手称, 2019 ...

  9. 微信小程序 自动解决分包大小问题_微信小程序分包加载设置

    设置分包加载 微信小程序分包限制为: 主包或者单个分包最大为2M 整体小程序所有包最大为8M 为什么需要设置分包? 小程序项目中,有多种角色(公共页面很少),设置分包加载方便管理 整个小程序压缩后代码 ...

  10. 微信小程序销毁某一注册函数_微信小程序注销手册

    微信小程序一直存在一个问题:开发者不能注销自己的小程序. 之前当开发者需要彻底清除小程序信息时,只能够通过暂停服务或关闭"允许被搜索"的方式曲线救国.现在,这个问题终于解决了. 在 ...

最新文章

  1. 学习计算机视觉你需要知道这关键的八点
  2. 说说成为顶级运营人员的一个先决条件:做事的霸气!
  3. QT的QRadioTuner类的使用
  4. POS开发问题 - 多个弹出框的实现
  5. 神经网络与深度学习(邱锡鹏)-学习笔记
  6. C++中使用try{}catch()的优/缺点
  7. 计算机硬件检测维修资料,计算机硬件检测维修实训台 Computer hardware detection and maintenance training bench...
  8. 計算機二級-java11
  9. 《软件工程导论》第一章
  10. MyBatis Plus 联合查询
  11. 把单元格一分为二_excel如何把一个单元格分成两个 excel单元格拆分为二行
  12. C/C++ getcwd 获取项目的运行路径
  13. 财经APP富途/老虎/雪盈 牌照分析
  14. 【计算机毕业设计】269购物商城网站的设计与实现
  15. android记账本折线图_Android Studio——记账本以及图表可视化实现
  16. 推荐系统工程篇之搭建以图搜图服务
  17. 用Haskell写的卡普雷尔卡kaprekar黑洞小程序
  18. 华为3D建模服务(3D Modeling Kit),轻松构建高质量3D模型
  19. BC70 空心三角形图案
  20. 安卓图片分类浏览器php,Android快速实现图片浏览

热门文章

  1. 2022年医院三基考试肿瘤相关训练题及答案
  2. java this 逸出_Java并发编程——this逸出解决方法的思考
  3. C_CAPM模型(上)
  4. zencart 模板文件说明
  5. zencart模板,外贸鞋子模板
  6. Excel技巧之减肥
  7. python transforms_PyTorch教程【六】Transforms的使用
  8. Project 2013项目管理教程(3):建立任务间的依赖性
  9. Mac Apache php 配置域名
  10. linux 下perl离线包下载