微信小程序的下拉刷新:在page的js文件中有监听用户下拉刷新的处理函数onPullDownRefresh:function(){} //js文件中自带的处理函数,在onUnload下面,注意不要重复写 此外需要注意,使用下拉刷新需要在page.json中{ "enablePullDownRefresh": true,//允许下拉刷新 "backgroundTextStyle":"dark" //如果背景颜色是白色的,下拉刷新的动画效果就看不到,…
原文:微信小程序把玩(五)页面生命周期 这里只要熟悉页面的基本生命周期即可,业务在指定生命周期函数内书写. 以下是官网给出的生命周期函数方法和状态图 上面的生周期函数图对于做Android 或者IOS的来书理解起来应该不是难事,具体怎么掌握只有慢慢尝试和摸索 代码处理: 这里的代码主需要对使用创建项目时index目录下文件处理下就行,至于跳转后的页面用的还是logs不需要更改!下面贴下代码注释也比较详细 index.wxml <!--index.wxml--> <view class=&…
想要的效果 1.第一页只显示第一道题的内容,如图红框2.答题后,点击下一题,内容显示第二道题的内容 代码 answer.wxml <!--pages/answer/answer.wxml--> <view class="app-answer"> <view class="answer-header"> <view class="header-title">全民答题</view> <…
背景 在上一章(直击根源:vue项目微信小程序页面跳转web-view不刷新)解决了vue在小程序回退不刷新的问题之后,会引出了一个刷新的页面需要点击返回两次才能返回上一个页面 问题描述 在A页面从B页面带了参数返回之后,A页面会刷新,直接导致了,A页面返回上一个页面需要点击两次,其中点击一次时还是A页面. 解决方案 首先第一个想法就是,设置一下退回按钮直接跳到上一个页面去:,经过资料查找,回退按钮是没有直接触发函数的,也就是说不能直接控制回退的功能. 在寻找资料时,发现可以间接的触发一个unl…
小程序开发过程中经常有这种需求,需要把当前页面数据传递给上一个页面,但是wx.navigateBack()无法传递数据. 一般的办法是把当前页面数据放入本地缓存,上一个页面再从缓存中取出. 除此之外还有一种办法,巧妙利用页面栈. getCurrentPages() 函数用于获取当前页面栈的实例,以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面. 重点就在这里,在当前页面拿到上一个页面的实例对象,然后调用该对象的方法完成数据传递. 页面A Page({ data: { name:…
网上找的帖子大多是直接在onload中请求数据.而我想实现的是点击按钮,然后请求服务器,接着返回数据,前端页面渲染.所以搞了挺久的,在此记录一下. 请求是按照微信官方给出的,wx.request 在这里,我的逻辑是:点击按钮--->根据绑定的事情注册函数-->发起微信请求-->判断是否返回数据,成功返回数据则显示请求成功.-->返回数据到前端页面进行渲染 废话不多说,直接上代码: 一.前端页面代码: <view class="container2">…
前言 接上文:微信小程序开发05-日历组件的实现 github地址:https://github.com/yexiaochai/wxdemo 这里来说一说我们的理念,我们也学习小程序开发有一周多了,从近期的使用上来说,小程序可以作为底层,但是缺少一个框架层,这个框架层需要提供: ① 组件库 ② 更好的代码组织方式,也就是让我们可以做到轻松的组件化开发 我们从最开始到现在,都在沿着这个方向去分解小程序学习,其实小程序本身的东西差不多了,但是我们代码过程中有时候却越高越复杂,多了很多封装,其实这所有…
由于项目需要,最近便在做 一个类似于美团的餐饮平台的的微信微信小程序 ,项目有十几个页面,那么页面间的传值被经常用到.在小程序中页面间的传值主要有使用全局变量和本地存储这两种方法,在这个项目中我采用的是全局变量的方法 项目中使用的地方 下图为用户下单页面,下单时要选择配送地址,点击配送地址后跳入选择地址页面. 下图为用户选择地址页面,用户点击选择地址选项进行选择后再点击返回按钮回到用户下单页面 此为用户选择地址后返回的下单页面.此时下单页面的“选择地址”变为了用户自己的地址,便已经是完成了页面间…
最近给别个公司做技术支持,要实现微信小程序上拉刷新与下拉加载更多 微信给出的接口不怎么友好,最终想实现效果类似QQ手机版 ,一共3种下拉刷新状态变化,文字+图片+背景颜色 最终实现后的效果(这里提示有个不同点就是,自定义了导航条,并且下拉的时候,自定义导航条必须固定) 小程序实现下拉加载2种方式: 1. 简单粗暴,直接开启enablePullDownRefresh,开启全局下拉刷新 2.利用scroll-view组件 简单分析下2种方式的利与弊 enablePullDownRefresh方式 优…
这段时间开发了一个微信小程序,虽然小程序的导航API 官方文档写得很详细,但是在具体开发过程中还是会遇到很多不明白,或者一时转不过弯的地方. 1.页面切换传参,参数读取 1.1  wx.navigateTo(object) 功能:保留当前页面,跳转到应用内的某个页面,但是不能跳到 tabbar 页面.使用 wx.navigateBack 可以返回到当前页面. wx.navigateTo({ //当前页面对应的JS文件内 控制模板 url: 'test?id=1' //需要切换到的页面路劲,此处为…
前言: 对于小程序的页面路由,如果没有一定开发经验的话,理解起来还是会有些困难的.哪怕是有一定小程序开发经验的开发者,能够完全理解掌握的恐怕也不多. 这里就以另外一种方式来详细的介绍小程序的页面栈及路由方式,相信看了本文你能更深入的了解小程序的页面路由的. 模拟场景: 小程序的页面路径基本上都可以用PC端浏览器来模拟,如: 小程序页面栈 类似于 浏览器页面栈 小程序的初始化(新页面入栈) ——— 打开浏览器默认加载首页 小程序打开新页面(新页面入栈) ——— 浏览器在新标签中访问网址或者点击当前…
场景:小程序页面有一个web-view组件,组件嵌套的H5页面,要唤起微信支付. 先讲一下我的项目,首先我是自己开发的一个H5触屏版的商城系统,里面含有购物车,订单支付等功能.然后刚开始,我们公众号里面点击官网导航,其实就是访问的 https://m.xxxx.com 然后支付的时候,我判定了如果是微信浏览器则只展示微信公众号支付,如果是外部浏览器则展示支付宝.微信H5支付 2个选项. 小提示:(微信支付分了 微信公众号支付和微信H5支付,微信H5支付是后期才出的,早期没有.微信公众号支付是在微…
全局配置 app.json 文件用来对微信小程序进行全局配置. 一.配置页面路径 二.window 配置全局默认的窗口 navigationBarTextStyle:导航栏的标题颜色 navigationBarTitleText:导航栏的文字 navigationBarBackgroundColor:导航栏的背景颜色: backgroundColor:窗口的背景色 三.tabar 导航条 color:HexColor 必填 导航条的默认颜色selectedColor:HexColor 必填 文字…
如何离开含有tabbar的页面 在微信小程序开发过程中,我们会碰到从某页跳转到一个含有tabbar的页面的需求, 用 wx.navigateTo({url: '...',})  不起作用,需要使用 wx.switchTab({url: '...',}) 来实现. 那么,我们反过来,如何从含有tabbar的页面跳转到一个不含有/隐藏了tabbar的页面呢? 在尝试了上述的两个API后发现不起作用,wx.switchTab({url: '...',}) 倒是可以在有tabbar的页面之间跳转,但无法…
1.微信小程序使用echarts,首先下载echarts并导入小程序项目中,因小程序后期上线对文件大小有要求,所以建议进行定制下载导入可减少文件大小占比,也可以下载以前旧版本文件比较小的应付使用 下载echarts: https://echarts.apache.org/zh/download.html 定制下载:https://echarts.apache.org/zh/builder.html 旧版本查看: https://archive.apache.org/dist/echarts/ 下…
完成动态数据的加载,如下 使用上班的空余时间慢慢的学习,相信总有一天我会很熟悉的掌握这门技术. 本次学习小总结: 微信小程序使用的代码基本与HTML.CSS.JS等前段有关知识一样. 微信小程序js使用到的动态数据加载. 下一次学习目标: js与wxml相互调用: 解决网络图片为什么会出现403问题: 相信自己的努力,一定会有所用处.…
微信小程序使用模板消息需要使用表单提交 formId,因此进行了简单的代码测试,在 wxml 文件中创建 form 对象,并在 form 标签中声明属性 report-submit="true" . wxml 代码如下: <form name='sendMessageTest' report-submit='true' bindsubmit='getFormId'> <button form-type="submit">获取formId<…
在小程序开发中,我们通常会遇到这样的需求:提交某个表单成功后跳转该表单详情页面,但是返回时需要跳转回到首页(注意:我这里的首页是提交表单页的前一个页面),而不能再返回提交表单的页面,并且要在首页中刷新刚刚提交的数据 1. 这首先要求我们在提交成功跳转时,使用redirectTo的方式,不保留当前页面 2. 然后需要在当前页面上获取到首页并调用首页的刷新方法 如下图,prePage为首页,refresh()为首页中刷新数据的方法…
小程序提供了,onPullDownRefresh和onReachBottom两个事件函数监听下拉和上拉事件函数.提示加载中,取消加载中 效果: js文件 // pages/enterprise/enterprise.js var app = getApp(); Page({ /** * 页面的初始数据 */ data: { enterpriseList: [], pageNo: , //页数 pageSize: , // 条数 cityCode: null // 城市编码 }, //查询数据 q…
如图,当小程序发布新的版本后,用户如果之前访问过该小程序,通过已打开的小程序进入(未手动删除),则会弹出这个提示,提醒用户更新新的版本.用户点击确定就可以自动重启更新,点击取消则关闭弹窗,不再更新. 官方给的示例代码: const updateManager = wx.getUpdateManager() updateManager.onCheckForUpdate(function (res) { // 请求完新版本信息的回调 console.log(res.hasUpdate) }) upd…
小程序的每个页面都是独立的,每个页面都必须有 page.js 和 page.wxhl 文件,page.json 和 page.wxss 文件非必要文件,注意如果创建 page.json 则至少保证有一个对大括号,否则IED报错. page.js 管理该页面的逻辑事件.每个页面必须声明 Page() 方法. Page() 用来注册页面,其包含一下属性: data 用于初始化数据:data 将会以 JSON 的形式由逻辑层传至渲染层,所以其数据必须是可以转成 JSON 的格式:字符串,数字,布尔值,…
1.页面初始化(滚动前)时,video所在位置 2.页面滚动后,video视频组件所在位置 看了别人家的小程序并不会出现这种状况.最后检查发现,是页面包裹层设置了 height:100% 导致的 顺便记录下video组件使用注意事项: 1.video优先级最高,不能通过z-index设置显示的优先级 2.不要在 scroll-view.swiper.picker-view.movable-view 中使用video.(在scroll-view中使用一样出现浮动的问题,估计与scroll-view…
这个有点像子-->父传值 第一步,在子页面点击上一步或者保存数据请求成功以后添加如下代码. var pages = getCurrentPages(); var prevPage = pages[pages.length - 2]; //上一个页面 //直接调用上一个页面的setData()方法,把数据存到上一个页面中去 prevPage.setData({ mydata: { id:1, b: 125 } }) wx.navigateBack({//返回 delta: 1 }) 第二部,在父组…
音阶练耳是什么? 音阶练耳小程序是一款听音练习音阶,拥有简介界面的交互式小程序,以虚拟钢琴为辅助乐器,应用于日常练习,涵盖了五个八度内26种调式.以及下行中的所有调式与和声小调式的衍生,提高辨认音阶的听力. 功能 -快速练习 -可选择练习音阶的种类 小程序码 音阶练耳小程序展示 -用户进入小程序的主页面: -任选一节(小调音阶)作为子页面展示: 1.进入选择的小节,准备答题: 2.点击按钮[播放],播放题目: 3.选择选项,回答错误: 4.点击按钮[查看答案]: 5.点击按钮[播放],播放题目:…
承接上篇博客. 通过点击按钮跳转到新的页面. 先创建新页面home: 代码如下: // home.js Page({}) // 注册页面 // home.json {} // home.wxml <text>home页面</text> home页面创建好后,去app.json里面配置路径: // app.json { "pages": [ "qrcode/index/index", "qrcode/home/home" ]…
onUnload: function () { wx.reLaunch({ url: '../me/order-detail', }) },//这里url搞相对路径 wx.reLaunch跳到新页面没有返回箭头用wx.redirectTo,wx.navigateTo试试…
一.通过url传递参数,但由于navigateTo无法跳转到导航页,所以无法往导航页传递参数 wx.navigateTo({ url: 'test?id=1' }) 二.通过wx.navigateBack返回,但此法不能直接传递参数,通过直接修改上一页data中某个参数值来达到传递参数的效果 let pages = getCurrentPages(); //当前页面 let prevPage = pages[pages.length - 2]; //上一页面 prevPage.setData({…
根据文档的描述,做上拉加载时直接实现页面的onReachBottom()函数即可.但是要做下拉刷新时,除了实现onPullDownRefresh()函数外,还必须要在app.json中配置开启enablePullDownRefresh. "enablePullDownRefresh": "true" 但是已经按上面写法配置后,在微信开发者工具的模拟器上运行可以下拉刷新,在苹果真机上却不能触发下拉刷新! 原因是"true"是字符串而不是Boolea…
下拉刷新 1.需要在json文件中,设置"enablePullDownRefresh": true,表示该页面使用下拉刷新 2.在微信内置函数onPullDownRefresh中进行操作 onPullDownRefresh: function(){ console.log("onPullDownRefresh"); var that = this; that.getPhotoInfo();} 我这里的操作调用了其他的函数,不需要也可以在下面自定义函数.注意如果需要和…
页面跳转携带参数(以传递两个参数为例) a.wxml 页面传递 1 <navigator url="/pages/b/b?id=1&sid='289'"> <navigator> wx.navigateTo跳转携带参数 1 wx.navigateTo({ 2 url: '/pages/a/a?id=1 + "&tu=" + 'a.jpg' 3 }); 多个参数使用 & 连接 也可以写成这样(提倡) 1 var id=t…