微信小程序中wx:for遍历默认元素为item,但是如果我们设计多层遍历的时候我们就需要自定义item的字段名以及key的键名 wx:for="{{item.goodsList}}" wx:for-item="ite" wx:for-key="idx" wx:key="{{idx}}" 这样子元素就被设置成ite了,而key则为idx…
前言 微信小程序不存在ajax,那么它是如何实现数据请求功能的呢?在微信中提供了API的调用wx.request(OBJECT),这个是很不错的.下面就讲一下如何请求数据,简单到不行. wx.request 看文档时,提供了示例模板如下: wx.request({ url: 'test.php', //仅为示例,并非真实的接口地址 data: { x: '' , y: '' }, header: { 'content-type': 'application/json' // 默认值 }, suc…
微信小程序提供了一个如同浏览器cookie本地缓存方法,那就是今天要说的wx.setStorageSync() 注意,该方法是同步请求,还有个异步请求的方法是wx.setStorage(),参考官方文档[https://developers.weixin.qq.com/miniprogram/dev/api/storage/wx.setStorage.html] 取出本地缓存方法wx.getStorageSync,同样的,它也是异步请求,它也有一个同步请求方法wx.getStorage(), 使…
如何在微信小程序中使用Echarts可以看我的另一个教程:点击查看 首先看一个简单的例子 1.wxml文件 <view style='width:100%;height:200rpx'> <ec-canvas id="mychart-dom-bar" canvas-id="mychart-bar" ec="{{ ec }}"></ec-canvas> </view> 2.js文件 import *…
首先先介绍一下微信小程序Page.prototype.setData(Object data, Function callback)的讲解: setData函数用于将数据从逻辑层发送到视图层(异步),同时改变对应的this.data的值(同步) 微信小程序官网文档只对字符串,数字,数组和对象类型的数据通过对setData进行了修改,却没有对动态数据进行讲解,在这里我就针对静态数据以及动态数据的修改进行讲解. 这里关键是动态数据修改,通过使用[...]: "..."进行动态数据赋值,如下…
一.序言 应公司要求要求,要用小程序开发一个信息录入系统.没办法只能听话来填坑. 先介绍一下环境:客户端——小程序:服务端——java:数据库——mysql:服务器——centos7 需求:客户端输入信息,insert到数据库,没错就是这么一个简单的小功能,却为这个请求折腾了大半天 二.开始 先来看一下wx.request的官方文档:地址如下https://mp.weixin.qq.com/debug/wxadoc/dev/api/network-request.html#wxrequestob…
#index.js data: { "messg":"helloworld1111", "items":[ {"name":"张三"}, {"name":"李四"}, { "name": "王五"}, { "name": "赵六" }, ] }, #index.wxml <view&…
1.在js文件里写个界面跳转的事件处理函数gotableinfo,var index = parseInt(e.currentTarget.dataset.index); 为获取当前点击列表的下脚标,wx.navigateTo为小程序提供的界面路由跳转的方法,参数url为要跳转页面的连接(?后面为连接携带的参数) 2.data-index="{{index}}"为标记列表的下脚标,index的来源与wx:for="{{synctable}}"的列表渲染有关   默认…
条件渲染 顾名思义所谓的条件渲染,就是通过条件来判断是否需要渲染该代码块.条件渲染主要是用到wx:if 和 block wx:if 这两个,第一个相信好理解,第二个是在block里面进行条件渲染,这里我们特别说明一下< block/>并不是一个组件,它仅仅是一个包装元素,不会在页面中做任何渲染,只接受控制属性.和我们以前的逻辑编程类似,既然有了wx:if ,那么我们也会有wx:elseif和wx.else,这几个组合起来,可以使条件渲染更加灵活. 在这里官方文档中提到了一个wx:if和hidd…
本文转自:http://www.wxapp-union.com/forum.php?mod=viewthread&tid=4066 这个API解决了过去一个长久以来无法解决的问题,如何让用户重复授权: 打开小程序的设置界面:就是主动调取授权 目前资料极少,但是已经可以让大家先看看了: 官方文档地址:https://mp.weixin.qq.com/debug/wxadoc/dev/api/setting.html#opensettingobject 基础库版本 1.1.0 开始支持,低版本需做兼…
最近做微信小程序碰到了一些问题,和wx:for循环相关,wx:for有很多用途,例如可以用于swiper中图片的循环,也就是所谓的轮播图,也可以用于其它的循环,可以大大地减少代码量. 但wx:for.for-items.for-item.for-index这几个绕来绕去确实挺让人头疼的,下面来讲讲这几个的用法. wx:for绑定一个数组,就可使用数组中各项数据重复渲染该组件,默认数组的当前项的下标变量名默认为index,数组当前项的变量名为item,也可以根据自己的需要来重新定义这两个名字; w…
一直在写vue,第一次接触微信小程序,还是原生,最开始做的时候真的很闹心啊啊啊啊啊啊啊啊啊啊啊啊!!所以最近大概更新的都是微信小程序原生的内容了~~么么哒!!一定会继续努力的!!tips:在小程序项目中,app.json文件里的 { //页面配置路径 "pages":[ "page/index/index", //默认首页 "page/index/logs", ] } 正题:微信小程序原生数据渲染条件渲染:wx:if wx:elif wx:els…
微信小程序--火车票查询 写在最前面 微信小程序自九月份推出内测资格以来,经历了舆论热潮到现在看似冷清,但并不意味着大家不那么关注或者不关注了.我想不管是否有内测资格,只要是感兴趣的开发者已经进入潜心耕耘产品的阶段了,至少是静下心来思考与学习.如果对微信小程序的前途和定位有什么疑惑,可以看看这篇文章http://lib.csdn.net/article/wechat/46742. 下面从字母a开始编号的内容主要作为后续学习与思考后对文章做的更新,包括项目的改进.观点的补充等,所以建议大家先将整篇…
<微信小程序七日谈>系列文章: 第一天:人生若只如初见: 第二天:你可能要抛弃原来的响应式开发思维: 第三天:玩转Page组件的生命周期: 第四天:页面路径最多五层?导航可以这么玩 微信小程序提供导航相关的API: wx.navigateTo(); wx.redirectTo(); wx.navigateBack(). 使用wx.navigateTo()或者<navigator>组件跳转的页面路径最多只有5层,这些页面路径是可以通过wx.navigateBack()API或者左上角…
最近有个项目是保存为名片(图片),让用户发送给朋友或朋友圈,找了很多方案都不适用,绞尽脑汁之后还是选了使用canvas,但是用这玩意儿生成图片最大的缺点就是,如果你的内容中有图片,并且这个图片是通过外链链接进来的,那么很容易造成跨域而无法生成图片的问题,以下就是我解决该问题的办法: *提前说一句,在做这个功能的时候,我发现跨域的问题没法解决,唯一能做的就是把图片放到和canvas相同的域里 1,以下是微信小程序的wxml文件部分 <canvas canvas-id='share' width=&qu…
微信小程序删除处理 没有 confrim 那怎么实现这个效果呢 可以使用小程序里的模态框 代码: wx.showModal({ title: '提示', content: '确定要删除吗?', success: function (sm) { if (sm.confirm) { // 用户点击了确定 可以调用删除方法了 } else if (sm.cancel) { console.log('用户点击取消') } } }) 微信小程序操作成功提示后跳转 wx.showToast({ title:…
微信小程序图片预览提供了一个wx.previewImage接口,如下图: 现在我需要对网盘文件里的图片预览,但是网盘从后台返回的数据是各种类型的文件,如下图所示: 那么我们需要解决2个问题: 1.从这些列表中提取出只是图片类型的列表,并将它的url存入数组中: 2.获取当前你点击图片的索引值. 解决思路: 解决问题1: 假设从后台获取到的文件的列表保存到数组diskList中,我们可以通过filter提取出类型为image的列表,保存到数组imgList中. 然后再通过forEach刚刚筛选出来…
简而言之,所有的框架都是建立在原生javascript基础之上的,所以对于有一定js基础的同学来说,各种框架都是比较容易入手的,但不同的框架之间又有一定的差别,有时候切换使用时就会掉入坑了. 一.微信小程序有自己封装的一套组件视图容器,它把平时我们可能会用的一些页面视图效果都进行了分装: eg:  swiper,scroll-view,表单组件 在Vue项目中,我们可能要通过引入第三方组件库swiper,表单组件更多的是结合element-ui或者ant-ui 或者 iview 来实现表单页面的…
1.小程序navigator点击时不显示背景颜色 详情见官方文档:https://developers.weixin.qq.com/miniprogram/dev/component/navigator.html?t=2017112 指定点击时的样式类,当hover-class="none"时,没有点击态效果 2.微信小程序image组件中aspectFill和widthfix模式应用详解 <image mode="aspectFill" src="…
微信小程序登录基本流程就是 1. wx.login获取js_code 根据app_id, secret, js_code 数据 wx.request 获取用户的openid和session_key   请求地址: https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code   wx.login({ success…
1.微信小程序后台获取登录用户的openid,首先微信小程序将code传给后台服务器 wx.login({ success: function (res) { var code = res.code if (code) { that.globalData.code = code; globalData: { code: code } wx.request({ url: 'https://www.nidedyuming.com/index.php/index/index/login', metho…
微信小程序中,我们可以通过调用wx.getLocation()获取到设备当前的地理位置信息,这个信息是当前位置的经纬度.如果我们想获取当前位置是处于哪个国家,哪个城市等信息,该如何实现呢? 微信小程序中并没有提供这样的API,但是没关系,有wx.getLocation()得到的经纬度作为基础就够了,其他的,我们可以使用其他第三方地图服务可以来实现,比如腾讯地图或百度地图的API. 以腾讯地图为例,我们可以去腾讯地图开放平台注册一个账号,然后在它的管理后台创建一个密钥(key). 然后在顶部菜单里…
原文:微信小程序把玩(四十一)canvas API 绘图是每个移动应用必备的技术,基本上和Android,IOS,等移动开发都是相同的,创建个上下文,给你个画布再上画,官网给的小例子都比较全了自己去看吧,drawImage时没有反应不知道是BUG还是电脑不能测试待定,http://wxopen.notedown.cn/api/api-canvas.html 屏幕就像是数学上的坐标轴,且在第四象限,以屏幕左上角为圆点,X轴向右为正向左为负,Y轴向下为正向上为负(这点和数学上相反的)以圆点为基点画个…
微信小程序登录 小程序可以通过微信官方提供的登录能力方便地获取微信提供的用户身份标识,快速建立小程序内的用户体系. 微信小程序登录流程时序图 说明 调用 wx.login() 获取 临时登录凭证code ,并回传到开发者服务器. 调用 auth.code2Session 接口,换取 用户唯一标识 OpenID 和 会话密钥 session_key. 之后开发者服务器可以根据用户标识来生成自定义登录态,用于后续业务逻辑中前后端交互时识别用户身份. 注意 会话密钥 session_key 是对用户数…
微信小程序与用户交互 一.显示消息提示框 wx.showToast({属性名:属性值}) 自定义一个提示框,时间到了会自动关闭 wx.showToast({ title:"成功", //必填 icon: 'success',//图标只支持"success"."loading" image: '/images/tan.png',//自定义图标的本地路径,image 的优先级高于 icon duration: 2000,//提示的延迟时间,单位毫秒,…
1 微信小程序POST请求参数传递不到后台 需要在微信请求 wx.request 改变默认 header 配置为如下 wx.request({ url: 'test.php', //仅为示例,并非真实的接口地址 data: { x: '' , y: '' }, header: { 'content-type': 'application/x-www-form-urlencoded' // 改变默认值为这个配置 }, success: function(res) { console.log(res…
一.初步认识 uni-app官网:https://uniapp.dcloud.io/component/README HBuilderX官方IDE下载地址: http://www.dcloud.io/hbuilderx.html 选择版本: 下载App开发版,可开箱即用: 如使用cli方式创建项目,可直接下载标准版 创建uni-app: 工具栏里的文件 -> 新建 -> 项目 -> 选择uni-app,输入工程名 运行uni-app: 快捷键 ctrl+r 选择运行方式 显示项目目录:…
看看音乐播放组件是如何实现完成的音乐的播放的!!! 一.音乐music组件的开发 1.页面以及页面样式的开发 // music组件页面开发 <view hidden="{{hidden}}" class="container"> <image class="classic-img {{playing?'rotation':''}}" src='{{img}}'/> <image class="player-…
session介绍 由于Http是无状态的协议,所以服务端需要记录用户的状态时,就需要某种机制来识别具体的用户,实现这个机制的方式就是session. 典型的场景比如购物车,当你点击下单按钮时,由于HTTP协议无状态,所以并不知道是哪个用户操作的,所以服务端要为特定的用户创建了特定的Session,用于标识这个用户,并且跟踪用户,这样才知道购物车里面有几本书.这个Session是保存在服务端的,有一个唯一标识. 那么服务器端是如何识别特定的客户的? 每次HTTP请求的时候,客户端都会发送相应的C…
注:本文使用的是 uniapp 语法. 微信小程序提供了扫码API:wx.scanCode,但它只能扫一次码,想要实现连续扫码,需要借用 camera 组件.camera 组件不仅能拍照,还具有扫码功能,只要将它的 mode 属性设置为 scanCode,就会在扫码识别成功时触发 bindscancode 事件(在 uniapp 中是 scancode 事件). <camera mode="scanCode" device-position="back" fl…