微信小程序插件使用
使用插件
小程序开发者可便捷地把插件添加到自己的小程序内,丰富小程序的服务。当用户在使用小程序时,将可以在小程序内使用插件提供的服务。
开放范围
所有小程序
接入流程
在小程序管理后台添加插件
小程序开发者可在”小程序管理后台-设置-第三方服务-插件管理“中,根据AppID查找需要的插件,并申请使用。插件开发者在24小时内通过后,小程序开发者可在小程序内使用该插件。
- 在小程序代码中使用插件
引入插件代码包
对于插件的使用者,使用插件前要在 app.json
中声明需要使用的插件,例如:
{
"plugins": {
"myPlugin": {
"version": "1.0.0",
"provider": "wxxxxxxxxxxxxxxxxx"
}
}
}
如上例所示, plugins
定义段中可以包含多个插件声明,每个插件声明中都必须指明插件的 appid 和需要使用的版本号。
使用插件的 js 接口
在引入插件代码包之后,就可以在这个小程序中使用插件提供的自定义组件或者 js 接口。
如果需要使用插件的 js 接口,可以使用 requirePlugin
方法:
var myPluginInterface = requirePlugin('myPlugin') myPluginInterface.hello()
使用插件的自定义组件
使用插件提供的自定义组件,和使用普通自定义组件的方式相仿。在 json
文件定义需要引入的自定义组件时,使用 plugin://
协议即可,例如:
{
"usingComponents": {
"hello-component": "plugin://myPlugin/hello-component"
}
}
出于对插件的保护,插件提供的自定义组件在使用上有一定的限制:
- 页面中的
this.selectComponent
接口无法获得插件的自定义组件实例对象; wx.createSelectorQuery
等接口的>>>
选择器无法选入插件内部。
插件调用 API 的限制
插件可以调用的 API 与小程序不同,主要有两个区别:
- 插件的请求域名列表与小程序相互独立;
- 一些 API 不允许插件调用。
目前,允许插件调用的 API 及其对应版本要求如下。
API | 最低版本 |
---|---|
wx.addPhoneContact |
1.9.6 |
wx.arrayBufferToBase64 |
1.9.6 |
wx.base64ToArrayBuffer |
1.9.6 |
wx.canvasGetImageData |
1.9.6 |
wx.canvasPutImageData |
1.9.6 |
wx.canvasToTempFilePath |
1.9.6 |
wx.chooseImage |
1.9.6 |
wx.chooseLocation |
1.9.6 |
wx.chooseVideo |
1.9.6 |
wx.closeBLEConnection |
1.9.6 |
wx.closeBluetoothAdapter |
1.9.6 |
wx.connectSocket |
1.9.6 |
wx.createAnimation |
1.9.6 |
wx.createAudioContext |
1.9.6 |
wx.createBLEConnection |
1.9.6 |
wx.createCameraContext |
1.9.6 |
wx.createCanvasContext |
1.9.6 |
wx.createInnerAudioContext |
1.9.6 |
wx.createIntersectionObserver |
1.9.6 |
wx.createLivePlayerContext |
1.9.6 |
wx.createLivePusherContext |
1.9.6 |
wx.createMapContext |
1.9.6 |
wx.createSelectorQuery |
1.9.6 |
wx.createVideoContext |
1.9.6 |
wx.downloadFile |
1.9.6 |
wx.getBLEDeviceCharacteristics |
1.9.6 |
wx.getBLEDeviceServices |
1.9.6 |
wx.getBackgroundAudioManager |
1.9.6 |
wx.getBackgroundAudioPlayerState |
1.9.6 |
wx.getBeacons |
1.9.6 |
wx.getBluetoothAdapterState |
1.9.6 |
wx.getBluetoothDevices |
1.9.6 |
wx.getClipboardData |
1.9.6 |
wx.getConnectedBluetoothDevices |
1.9.6 |
wx.getImageInfo |
1.9.6 |
wx.getLocation |
1.9.6 |
wx.getNetworkType |
1.9.6 |
wx.getRecorderManager |
1.9.94 |
wx.getScreenBrightness |
1.9.6 |
wx.getStorage |
1.9.6 |
wx.getStorageSync |
1.9.6 |
wx.getSystemInfo |
1.9.6 |
wx.getSystemInfoSync |
1.9.6 |
wx.hideLoading |
1.9.6 |
wx.hideToast |
1.9.6 |
wx.makePhoneCall |
1.9.6 |
wx.makeVoIPCall |
1.9.6 |
wx.notifyBLECharacteristicValueChange |
1.9.6 |
wx.notifyBLECharacteristicValueChanged |
1.9.6 |
wx.onAccelerometerChange |
1.9.6 |
wx.onBLECharacteristicValueChange |
1.9.6 |
wx.onBLEConnectionStateChange |
1.9.6 |
wx.onBLEConnectionStateChanged |
1.9.6 |
wx.onBackgroundAudioPause |
1.9.6 |
wx.onBackgroundAudioPlay |
1.9.6 |
wx.onBackgroundAudioStop |
1.9.6 |
wx.onBeaconServiceChange |
1.9.6 |
wx.onBeaconUpdate |
1.9.6 |
wx.onBluetoothAdapterStateChange |
1.9.6 |
wx.onBluetoothDeviceFound |
1.9.6 |
wx.onCompassChange |
1.9.6 |
wx.onNetworkStatusChange |
1.9.6 |
wx.onUserCaptureScreen |
1.9.6 |
wx.openBluetoothAdapter |
1.9.6 |
wx.openLocation |
1.9.6 |
wx.pauseBackgroundAudio |
1.9.6 |
wx.pauseVoice |
1.9.6 |
wx.playBackgroundAudio |
1.9.6 |
wx.playVoice |
1.9.6 |
wx.previewImage |
1.9.6 |
wx.readBLECharacteristicValue |
1.9.6 |
wx.removeStorage |
1.9.6 |
wx.removeStorageSync |
1.9.6 |
wx.reportAnalytics |
1.9.6 |
wx.request |
1.9.6 |
wx.saveImageToPhotosAlbum |
1.9.6 |
wx.saveVideoToPhotosAlbum |
1.9.6 |
wx.scanCode |
1.9.6 |
wx.seekBackgroundAudio |
1.9.6 |
wx.setClipboardData |
1.9.6 |
wx.setKeepScreenOn |
1.9.6 |
wx.setScreenBrightness |
1.9.6 |
wx.setStorage |
1.9.6 |
wx.setStorageSync |
1.9.6 |
wx.showActionSheet |
1.9.6 |
wx.showLoading |
1.9.6 |
wx.showModal |
1.9.6 |
wx.showToast |
1.9.6 |
wx.startAccelerometer |
1.9.6 |
wx.startBeaconDiscovery |
1.9.6 |
wx.startBluetoothDevicesDiscovery |
1.9.6 |
wx.startCompass |
1.9.6 |
wx.startRecord |
1.9.6 |
wx.stopAccelerometer |
1.9.6 |
wx.stopBackgroundAudio |
1.9.6 |
wx.stopBeaconDiscovery |
1.9.6 |
wx.stopBluetoothDevicesDiscovery |
1.9.6 |
wx.stopCompass |
1.9.6 |
wx.stopRecord |
1.9.6 |
wx.stopVoice |
1.9.6 |
wx.uploadFile |
1.9.6 |
wx.vibrateLong |
1.9.6 |
wx.vibrateShort |
1.9.6 |
wx.writeBLECharacteristicValue |
1.9.6 |
微信小程序插件使用的更多相关文章
- 微信小程序插件 - 开发教程
昨天(2018.3.13),微信小程序发布了重大功能更新,支持插件的使用和开发,个人预计,不超过2个月,优质服务的插件将会如雨后春笋般涌现. 这篇文章,我将会带大家,从0开始,学习如何开发和使用插件. ...
- vsCode 开发微信小程序插件
用 vsCode 开发微信小程序可以配置以下插件,让开发更美好: 1. vscode weapp api 2. vscode wxml 3. vscode-wechat 4. Easy WXLESS ...
- 「腾讯视频」微信小程序插件介绍
上期,我们在<从原理到应用,一文带你了解小程序插件能力>一文中介绍了小程序插件的意义.作用以及应用.今天开始,我们会每期与大家分享一款优秀的小程序插件,从使用场景到使用方法,都将作出详细的 ...
- 微信小程序插件组件-Taro UI
微信小程序组件使用以下官网查看 ↓ ↓ ↓ https://taro-ui.jd.com/#/docs/fab
- 微信小程序插件内页面跳转和参数传递(转)
在此以插件开发中文章列表跳传文章详情为例. 1.首先在插件中的文章列表页面wxml中绑定跳转事件. bindtap='url' data-id="{{item.article_id}}&qu ...
- 微信小程序插件内页面跳转和参数传递
在此以插件开发中文章列表跳传文章详情为例. 1.首先在插件中的文章列表页面wxml中绑定跳转事件. bindtap='url' data-id="{{item.article_id}}&qu ...
- 微信小程序 插件介绍
小程序的插件是对一组js接口.自定义组件或页面的封装.插件不能独立运行,必须嵌入在其他小程序中才能被用户使用:而第三方小程序在使用插件时,也无法看到插件的代码.因此,插件适合用来封装自己的功能或服务, ...
- 使用JavaScript定义一个微信小程序插件样例
var wxTimer = new wxTimer({ beginTime: "00:00:20", complete: function () { wx.redirectTo({ ...
- 微信小程序函数调用监控
微信小程序之无埋点函数调用监控 有时候,面对一个bug,左思右想就是无法理解为什么. 我就有过这样的经历,耗时整个一个晚上,后来还是放弃了.不得不在所有可能的点都加上日志,部署等待再次报错,真的很让人 ...
随机推荐
- 模拟C#的事件添加和删除
从<C# Via CLR>中的演化的一个小demo,探索事件的添加和删除原理,简单明了: using System; using System.Collections.Generic; u ...
- ubuntu16.04, git 的配置
1.下载git:sudo apt-get install git 2.生成公钥:ssh-keygen -t rsa -C '你的邮箱' ,不停回车即可 3. mkdir test cd te ...
- Qt5.3.2_CentOS6.4(x86)_代码文件编码
1.1.1.Qt5.3.2_MinGW 在Windows中安装时,默认的文件编码是 UTF8. 1.2.在 CentOS6.4中安装 qt-opensource-linux-x86-5.3.2.run ...
- 《剑指offer》第三十四题(二叉树中和为某一值的路径)
// 面试题34:二叉树中和为某一值的路径 // 题目:输入一棵二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所 // 有路径.从树的根结点开始往下一直到叶结点所经过的结点形成一条路径. #i ...
- spring boot: @Entity @Repository一个简单的数据读存储读取
spring boot: @Entity @Repository一个简单的数据读存储读取 创建了一个实体类. 如何持久化呢?1.使用@Entity进行实体类的持久化操作,当JPA检测到我们的实体类当中 ...
- php新手第一次安装mongo
以下是我走位php新手第一次安装mongo模块的步骤: 1.首先从在网上选取适当版本的mongoDB扩展包下载; 2.解压扩展包,并且进入解压目录; tar -zxf mongo-1.4.1.tgz ...
- [Java学习] 再谈Java包
在Java中,为了组织代码的方便,可以将功能相似的类放到一个文件夹内,这个文件夹,就叫做包. 包不但可以包含类,还可以包含接口和其他的包. 目录以"\"来表示层级关系,例如 E:\ ...
- LeetCode--198--打家劫舍
问题描述: 你是一个专业的小偷,计划偷窃沿街的房屋.每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警. 给 ...
- 插件Vue.Draggable(5000🌟)
安装资源库:从Vue资源:https://github.com/vuejs/awesome-vue下载 Libraries/UI Components/Form/Drag and Drop yarn ...
- Confluence 6 从外部目录中同步数据如何工作
下面是有关缓存功能的一些摘要信息: 用户和用户组的缓存信息保存在应用程序的数据库中. 当你连接一个新的外部目录到系统中的时候,一个同步任务将会启动被,并且在后台运行拷贝所有需要的用户和用户组信息,以及 ...