微信小程序1-小程序基础,开发工具安装使用
微信小程序2-WXSS,WXS
微信小程序3-小程序生命周期和组件

1.小程序的api

1).获取系统信息wx.getSystemInfo
wx.getSystemInfo({success (res) {console.log(res.model)console.log(res.pixelRatio)console.log(res.windowWidth)console.log(res.windowHeight)console.log(res.language)console.log(res.version)console.log(res.platform)}})

2).页面路由wx.navigateTo

保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面,例如:从data页面跳转到dataInfo页面
wx.navigateTo无法跳转到tabBar页面(就是无法跳转底部标题栏的页面)

//data页面的ts代码onclick() {wx.navigateTo({url: '/pages/dataInfo/dataInfo?name=yw&age=18',//附带两个参数过去events: {// 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据someEvent: function (data:any) {console.log('data页面someEvent',data)},someEvent1: function (data:any) {console.log('data页面someEvent',data)}},success: function (res) {// 通过eventChannel向被打开页面传送数据res.eventChannel.emit('callback', { data: 'data页面返回' })}})}
//dataInfo页面的ts代码onLoad:function(option) {console.log(option.name)console.log(option.age)const eventChannel = this.getOpenerEventChannel()eventChannel.emit('someEvent', {data: 'dataInfo页面返回'});eventChannel.emit('someEvent1', {data: 'dataInfo页面返回1'});// 监听callbackt事件,获取上一页面通过eventChannel传送到当前页面的数据eventChannel.on('callback', function(data) {console.log('dataInfo页面',data)})}

3).页面路由wx.switchTab

跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面

onclick() {wx.switchTab({url: "/pages/my/my"})}

4).页面路由wx.redirectTo

关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面

 onclick() {wx.redirectTo({url: "/pages/dataInfo/dataInfo"})}
5).显示当前页面的转发按钮wx.showShareMenu
  wx.showShareMenu({withShareTicket: true,menus: ['shareAppMessage', 'shareTimeline']})


6).显示消息提示框wx.showToast
 wx.showToast({title: '成功',icon: 'success',duration: 2000})

7).显示 loading 提示框wx.showLoading

显示 loading 提示框。需主动调用 wx.hideLoading 才能关闭提示框

wx.showLoading({title: '加载中',
})setTimeout(function () {wx.hideLoading()
}, 2000)

8).显示模态对话框wx.showModal
wx.showModal({title: '提示',content: '这是一个模态弹窗',success (res) {if (res.confirm) {console.log('用户点击确定')} else if (res.cancel) {console.log('用户点击取消')}}
})

9).在当前页面显示导航条加载动画wx.showNavigationBarLoading
//wxml代码
<view bindtap='btnClick1'> 开启按钮 </view>
<view bindtap='btnClick2'> 取消按钮 </view>//ts代码
btnClick1(){wx.showNavigationBarLoading()},btnClick2() {wx.hideNavigationBarLoading()}

10).下拉颜色和状态

wx.setBackgroundTextStyle:动态设置下拉背景字体、loading 图的样式

wx.setBackgroundColor:动态设置窗口的背景色

onLoad() {wx.setBackgroundTextStyle({textStyle: 'dark' // 下拉背景字体、loading 图的样式为dark})wx.setBackgroundColor({backgroundColorTop: '#ff0000', // 顶部窗口的背景色backgroundColorBottom: '#ffff00', // 底部窗口的背景色})}

2.网络

1).接口请求 wx.request
(1).配置合法域名

小程序请求的接口需要https和域名,并且需要在微信小程序管理后台中加入指定域名
微信小程序官网i

(2).请求示例
wx.request({url: '', data: {x: '',y: ''},header: {'content-type': 'application/json' // 默认值},success (res) {console.log(res.data)}
})
2).文件下载wx.downloadFile

下载文件资源到本地。客户端直接发起一个 HTTPS GET 请求,返回文件的本地临时路径 (本地路径),单次下载允许的最大文件为 200MB
同样也要配置下载合法域名

wx.downloadFile({url: '', success (res) {// 只要服务器有响应数据,就会把响应内容写入文件并进入 success 回调,业务需要自行判断是否下载到了想要的内容if (res.statusCode === 200) {wx.playVoice({filePath: res.tempFilePath})}}
})
3).文件上传wx.uploadFile

将本地资源上传到服务器。客户端发起一个 HTTPS POST 请求,其中 content-type 为 multipart/form-data
同样也要配置下载合法域名

  wx.uploadFile({url: '', filePath: tempFilePaths[0],name: 'file',formData: {'user': 'test'},success (res){const data = res.data//do something}})

3.支付

如果需要接入微信支付功能,需要在微信商户平台
微信商户平台

1).登录微信商户平台,然后点击接入微信支付进行支付申请

个人是没有办法进行开发支付功能的,需要营业执照等



申请成功后,可以看到关联了商户号

2).设置api密钥(商户密钥),该密钥在做微信支付功能的时候是必须的

依然在支付商务平台

3).发起支付
(1).支付流程

1.wx.login获取用户临时登录凭证code,发送到后端服务器换取openId
2.打开小程序下单,小程序会将购买的商品Id,商品数量,以及用户的openId传送到服务器
3.服务器在接收到商品Id、商品数量、openId后,生成订单数据,调用支付统一下单api,获取预付单信息(prepay_id)
4.小程序端在获取对应的参数后,调用wx.requestPayment()发起微信支付,唤醒支付工作台,进行支付
5.确认支付之后执行鉴权调起支付
6.在微信后台进行鉴权,微信后台直接返回给前端支付的结果,前端收到返回数据后对支付结果进行展示
7.微信后台在给前端返回支付的结果后,也会向服务器返回一个支付结果
(2).发起支付wx.requestPayment需要的参数

wx.requestPayment({timeStamp: '',nonceStr: '',package: '',signType: 'MD5',paySign: '',success (res) { },fail (res) { }
})

3.转发分享

1).转发onShareAppMessage

监听用户点击页面内转发按钮(button 组件 open-type=“share”)或右上角菜单“转发”按钮的行为,并自定义转发内容
注意:只有定义了此事件处理函数,右上角菜单才会显示“转发”按钮

Page({onShareAppMessage() {return {title: '自定义转发标题',path: '/page/data/data?id=123',}}})


2).分享朋友圈onShareTimeline

监听右上角菜单“分享到朋友圈”按钮的行为,并自定义分享内容
注意:只有定义了此事件处理函数,右上角菜单才会显示“分享到朋友圈”按钮

Page({
/*** 生命周期函数--监听页面加载*/onLoad() {// 用户点击右上角分享给好友,要先在分享好友这里设置menus的两个参数,才可以分享朋友圈wx.showShareMenu({menus: ['shareAppMessage', 'shareTimeline'] //shareAppMessage必须得有})},//用户点击右上角分享朋友圈onShareTimeline() {return {title: '自定义分享标题',query: "id=110101&name=heyzqt",imageUrl: ""}}
})


3).收藏onAddToFavorites

监听用户点击右上角菜单“收藏”按钮的行为,并自定义收藏内容

Page({
onAddToFavorites(res) {// webview 页面返回 webViewUrl//console.log('webViewUrl: ', res.webViewUrl)return {title: '自定义收藏标题',imageUrl: '',query: 'name=xxx&age=xxx',}}
})


微信小程序4-小程序的api相关推荐

  1. 微信小程序城市定位(百度地图API)

    概述 微信小程序提供一些API(地址)用于获取当前用户的地理位置等信息,但无论是wx.getLocation,还是wx.chooseLocation均没有单独的字段表示国家与城市信息,仅有经纬度信息. ...

  2. api 微信内置浏览器js_多端开发框架uni-app入坑指南,一套代码适用微信、头条等小程序...

    前言 hello 小伙伴们,现在我已经正式入坑 uni-app 了.uni-app 已经发布好几个月了,期间也是踩坑无数,但是官方秉承着不抛弃不放弃的精神,积极解决开发者的各种简单的.复杂的问题,在此 ...

  3. 微信小程序使用阿里云物联网API开发物联网应用

    微信小程序是一种不需要下载安装即可使用的应用,它实现了应用"触手可及"的梦想,用户扫一扫或者搜一下就可以打开的应用. 微信小程序具有方便快捷,速度快,安全及保密性高的优点,同时开发 ...

  4. 微信小程序入门教程之四:API 使用

    目录 一.WXML 渲染语法 二.客户端数据储存 三.远程数据请求 四.组件 五.获取用户个人信息 六.多页面的跳转 七.wx.navigateTo() 本篇就介绍怎么使用 API. 所有示例的完整代 ...

  5. 微信小程序调用腾讯地图API进行驾车路线规划

    微信小程序调用腾讯地图API进行驾车路线规划 申请key 下载sdk 实现代码 遇到的问题 申请key 微信小程序的地图api是非常有限的,所以部分功能实现需要调用地图api.使用腾讯地图api过程如 ...

  6. 微信小程序开发——小程序的宿主环境API,协同工作和发布

    一.小程序API概述 小程序中的 API 是由宿主环境提供的,通过这些丰富的小程序 API ,开发者可以方便的调用微信提供的能力,例如:获取用户信息.本地存储.支付功能等. 二.小程序API的3大分类 ...

  7. 微信背单词类小程序,小鸡单词源码下载,打卡微信小程序

    微信背单词类小程序,小鸡单词源码下载,微信小程序开发学习案例,小程序开发教程.一个用来背单词每天打卡的微信小程序,还有词汇测试,包含多种词库后台由腾讯云wafer解决方案. 前段时间开始学做微信小程序 ...

  8. 你能用微信小程序打开小程序了【附开发方法】

    6月21日晚间,微信小程序再次迎来升级:小程序可以打开小程序了,同一个公众号下关联的10个同主体小程序和3个非同主体小程序之间,可以调用接口直接相互跳转.微信客户端6.5.9及以上版本支持.另外门店小 ...

  9. 微信应用号(小程序)资源汇总(1010更新)

    wechat-weapp-resource 微信应用号(小程序)资源汇总. 每天不定期整理和收集微信小程序相关资源,方便查阅和学习,欢迎大家提交新的资源,完善和补充. 目录 开源项目(1010更新) ...

  10. 微信小程序_小程序开发框架

    微信小程序_小程序开发框架 微信小程序框架 微信小程序小程序开发框架的目标是通过尽可能简单.高效的方式让开发者可以在微信中开发具有原生APP体验的服务. 框架提供了自己的视图层描述语言WXML和WXS ...

最新文章

  1. qstudio c语言中文网,再整理:Visual Studio Code(vscode)下的通用C语言环境搭建
  2. hql中获取前一天的数据_oracle实现动态查询前一天早八点到当天早八点的数据功能示例...
  3. sql server 关联更新
  4. 反向telnet连接
  5. 命令前面加一个!的意思如!python
  6. python ctypes模块安装_ctypes模块扩展python
  7. LVS(6)——NAT准备工作
  8. tablayout支持改变选中文字大小,支持左右滑动,支持viewpager,支持三角可移动指示器...
  9. 给.net初学者的一些建议(共勉之)[转载]
  10. CentOS7安装火狐flash插件看网页视频
  11. GridFsTemplate介绍以及基本使用
  12. win10安装IIS及操作使用
  13. Win7如何显示文件扩展名
  14. 综合布线(楼栋)设计报告
  15. The Porter Stemming Algorithm
  16. Python书写格式
  17. git rebase命令实际操作记录
  18. 一位Android大牛的BAT面试心得与经验总结,附答案
  19. sql语句关联关系的+号
  20. 取消Chrome黑暗模式

热门文章

  1. fseek函数、ftell函数、rewind函数详解
  2. steam授权_恐怖游戏爱好者的福音!十一月Steam上最值得玩的恐怖游戏
  3. UE4 中文文档阅读
  4. 2021-08-08 WPF控件专题 StackPanel 控件详解
  5. 跳频信号检测与参数估计技术研究
  6. 求相似三角形的几种方法,相似三角形算法有哪些
  7. ps笔刷套装:逼真下雪/落雪效果
  8. 雪景特效制作软件JixiPix Snow Daze for Mac
  9. Manjaro Linux 相关初始化
  10. MAYA安装包+安装教程