文章目录

  • 一、简介
  • 二、弹出框
    • 1、提示框
      • 1.1 显示提示框
      • 1.2 加载提示框
    • 2、是否选择框
    • 3、多项选择框
  • 三、嵌套
  • 四、遇到的问题

最近用了一周写了一个仿知乎的小程序,将会陆续整理,包括前端页面设计与后端逻辑、数据库和云函数操作等,以及自己遇到的坑。之前也没有学过javascript和数据库,css和html大概知道,用了一天看数据库、php、vue,后来为了设计美观,用一早上看css和html,就可以开始做了,所以算是零基础的新手训练哦。感兴趣就关注吧

一、简介

微信小程序自动几种弹出框,方便有用,以下做介绍

二、弹出框

1、提示框

1.1 显示提示框

常见的场景,在某项操作之后,提示一段文字,持续一小会后消失(注意:不得超过12个字节,6个汉字)

展示效果

js文件

第一种:显示成功

wx.showToast({title: '已举报',icon: 'success',duration: 1500, //显示的持续时间,单位为msmask: true,})

第二种:显示失败

 wx.showToast({icon: 'none',title: '失败',duration: 1500,mask: true,})

其他:还有禁止 forbidden、取消 cancel,文字text,但是没有用到,有兴趣可以试试

1.2 加载提示框

//显示加载图标
wx.showLoading
wx.showLoading({title: '加载中',
})//计时2秒之后隐藏该框
setTimeout(function () {wx.hideLoading()
}, 2000)

也可以在onLaund()里写上加载,在onReady()写上隐藏加载,但是慎用,之前用过,有时会出现一直加载的情况,因为被其他操作影响,这里就不细说了。

2、是否选择框

常见的场景,在某项操作之后,提示一段文字,需要选择“确定”或者“取消”

展现效果

js文件

wx.showModal({title: '举报',  //这里自由发挥content: '维护健康言论环境', //这里自由发挥success(res) {if (res.confirm) {console.log('用户点击确定')//做某事} else if (res.cancel) {console.log('用户点击取消')//做某事}}})

wxml
这里我绑定一个按钮点击事件,很简单自由发挥

3、多项选择框

常见的场景,在某项操作之后,在底部弹出多个选项

展现效果

js文件

setOrder: function (e) {var itemList = ['按时间顺序', '按评论数量', '按点赞数量', '按收藏数量'] //这里是选项框内容,最多六个wx.showActionSheet({itemList: itemList,success: function (res) {//如果不是选择点击取消if (!res.cancel) {//打印出点击的选项框的indexconsole.log(itemList[res.tapIndex])//如果选择第1个选项if (res.tapIndex == 0) {//做某事//比如跳转页面,修改数等等}//如果选择第2个选项else if (res.tapIndex == 1) {//做某事}//如果选择第3个选项else if (res.tapIndex == 2) {//做某事}//如果选择第4个选项else {//做某事}}}})}

wxml
我这里是在一个按钮里加 bindtap=“setOrder”,也就是点击事件绑定了setOrder这个函数。

三、嵌套

可以在多项选择框之后,选择完成,显示其他提示框,自由组合,尝试一下吧
比如这是我写的一个多项选择框,选中框之后又会出现是否选项框、提示框。这里只是举个例子,代码不必细读。

showFunc:function(e){var itemList = ['写回答','关注话题', '举报']wx.showActionSheet({itemList: itemList,success: function (res) {if (!res.cancel) {console.log(itemList[res.tapIndex])//写回答if (res.tapIndex == 0) {wx.navigateTo({url: '../writeComment/writeComment',})console.log('【跳转页面】添加评论')}//关注话题else if (res.tapIndex == 1) {app.globalData.watchNum = app.globalData.watchNum + 1wx.showToast({title: '已关注',icon: 'success',duration: 1500,mask: true,})wx.cloud.callFunction({name: 'runDB',data: {type: "update", //指定操作 db: "shanHuQuestion", //指定操作的数据表indexKey: app.globalData.id,data: { //指定insert的数据watchNum: app.globalData.watchNum}},success: res => {console.log('[云函数] [updateDB] 已增加信息', res)console.error('【关注问题】 成功:')console.error('【数据库添加个人收藏】 成功:', res)const pages = getCurrentPages()const perpage = pages[pages.length - 1]perpage.onLoad()console.log('刷新页面')console.error('【关注问题】 成功:')},fail: err => {console.error('[云函数] [updateDB] 增加失败', err)}})const db = wx.cloud.database()db.collection('watch').add({data: {questionID: app.globalData.id,sendTimeTS: Date.now(),},success: res => {},fail: err => {wx.showToast({icon: 'none',title: '失败',duration: 1500,mask: true,})console.error('【关注问题】失败:', err)}})}else{const db = wx.cloud.database()db.collection('juBao').add({data: {jubaoID: app.globalData.id,},success: res => {wx.showModal({title: '举报',content: '维护健康言论环境',success(res) {if (res.confirm) {console.log('用户点击确定')wx.showToast({title: '已举报',icon: 'success',duration: 15000,mask: true,})} else if (res.cancel) {console.log('用户点击取消')}}})},fail: err => {icon: 'none',console.error('【举报问题】失败:', err)}})}}}})},

四、遇到的问题

1、在电脑端测试的时候,提示框的持续时间duration无效,一闪而过,但是在真机测试时有效果的。

2、提示框之后加页面跳转,提示框无效,一闪而过。因此可以使用setTimeout

setTimeOut(function() {//比如delay多少时间之后跳转页面,//但是这里的跳转要使用reLaunch,而不能navigateTo
}, delay)

3、在提示框内或者选型框内无法进行this.setData()操作,任何赋值的操作都不行。比如用var tempt =0,tempt = tempt+1,跳出提示框console.log(tempt),tempt依旧为0。

【Chapter1】微信自带弹出框相关推荐

  1. Vue项目流程7,交易页面,提交订单,支付页面,利用element UI 以及 QRCode 完成微信支付,弹出框按钮的相关工作,个人中心以及子路由我的订单

    目录 交易页面 提交订单 支付页面 微信支付 个人中心 我的订单 交易页面 1.静态组件及路由跳转 2.获取交易页数据 (1)接口 //获取用户地址信息 地址:/api/user/userAddres ...

  2. react native仿微信性别选择-自定义弹出框

    简述 要实现微信性别选择需要使用两部分的技术: 第一.是自定义弹出框: 第二.单选框控件使用: 效果 实现 一.配置弹出框 弹出框用的是:react-native-popup-dialog(Git地址 ...

  3. 微信小程序弹出框竖向滚动_微信小程序 解决自定义弹出层滑动时下层页面滚动问题...

    WXML 将整个底层页面使用 scroll-view 包裹起来,设置 scroll-y 当显示弹出层的时候为 true, 闭关弹出层的时候为 false WXSS Page 设置为绝对定位,宽高各百分 ...

  4. 简单自定义Popwindow,仿支付宝微信密码输入弹出框

    因APP增加了钱包功能,所以APP支付是迫在眉睫的事,市场上大多数的支付界面都是大同小异,因此写了下自定义PopupWindow,简单模仿下支付宝,本人也不常用PopupWindow,写的不好,希望大 ...

  5. 小程序确定取消弹窗_小程序开发之弹出框

    小程序开发过程中,很多地方为了便利我们多采用小程序自带弹出框来实现交互效果.这也够大多数开发使用,下面我给大家详细介绍下小程序弹出框 wx.showToast() title:显示的提示信息,在没有图 ...

  6. 小程序开发之各种弹出框选择框汇总

    小程序开发过程中,很多地方为了便利我们多采用小程序自带弹出框来实现交互效果.这也够大多数开发使用,下面我给大家详细介绍下小程序弹出框 官方api传送门:https://developers.weixi ...

  7. bootstrap弹出框如何实现点击出弹出框后,再点击任意地方隐藏弹出框

    最近做个项目是用bootstrap搭建的网站,因为其自带弹出框很好使,便直接拿过来用了. 不废话直接进入正题 共分两步 1. 首先设弹出框方式为自动 popover(function(){trigge ...

  8. android 弹出框带标题栏,Android微信右上角弹出的对话选择框实现

     Android微信右上角弹出的对话选择框实现 我在之前的文章中曾给出了一个开源的微信UI大体实现方案具体代码实现,参见附录文章1.本文单单挑出一个微信的UI实现点:微信右上角弹出的选择对话框.如 ...

  9. 微信小程序 -- 自定义底部弹出框(带动画--滑入滑出)

    实现这么一个功能,点击选项进行选择,效果是从底部弹出选项框(带滑出动画),选择了某项或者点击其他地方,隐藏(带滑出动画).效果图如下: 可适用于任何场景,如普通选项(如图)或者类似商城小程序选择商品属 ...

最新文章

  1. WebDriver 登陆 Jsoup抓取内容
  2. important的扯淡
  3. 大学生创新创业大赛案例_第五届“南博杯”大学生创新创业大赛决赛举行
  4. python培训学费多少钱-大连python培训多少钱?
  5. System.LazyT 延迟加载
  6. Pytorch实现U-net细胞分割
  7. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol52]51.基于ID的加密安全模型,描述IBE方案
  8. 简易计算器 java_终于写出一个简单的计算器了
  9. python 二分查找_Python实现二分法搜索
  10. PIC单片机开发环境的搭建总结及新上手单片机平台如何实现快速开发的几点经验分享
  11. JAE触摸屏维修JAE人机界面维修UT3-TS5-B
  12. 1.大量数据导出Excel 之 多重影分身之术
  13. 阿里云、腾讯、华为、滴滴为何都在用 SkyWalking ?
  14. 常见通信协议整理归纳
  15. mysql 索引未命中_mysql索引命中规则
  16. 英文单词缩写----DXNRY – Dictionary 字典
  17. 离散数学班委竞选问题用python程序实现(课本p45.30)
  18. 武汉申报|市重点研发计划重点项目申报进行中
  19. java实现加密———Base64加解密
  20. C51 Proteus仿真板

热门文章

  1. PHP实现邮件群发机
  2. 完美天空Ghost win7 sp1纯净版1.0
  3. 2021-07-05 .NET高级班 102-Socket的使用
  4. [日志]小沈阳搞笑经典语录
  5. 逆战用计算机咋弹,逆战烟雾弹怎么用_逆战如何利用好烟雾弹_快吧游戏
  6. 华为真机调试watch系列手表
  7. hbase基础命令学习
  8. 1164 Good in C
  9. 使用firework切图
  10. LOL英雄联盟.html