侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

如何开发小程序插件?

微信(小程序)  /  管理员 发布于 7年前   251

如何开发小程序插件?下面本篇文章给大家介绍一下微信小程序的开发使用教程。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

近期,微信小程序发布了重大功能更新,支持插件的使用和开发。消息一出,小程序开发者蜂拥而至,开始专研插件开发,不久后会有一批优质服务的插件上线是可以预见的。从开发者的角度来看,最关心的问题是怎么开发微信小程序插件,首先需要对小程序插件了解。

什么是微信小程序插件?

插件一组由js和自定义组件封装的代码库,插件无法单独使用、也无法预览,必须被其他小程序应用嵌入,才能使用。它和NPM的依赖、Maven的依赖库是一个道理。

不过,插件和NPM、Maven依赖管理不同的是:插件拥有独立的API接口和域名列表,不被小程序本身的域名列表限制。(NPM依赖进来的库不能进行第三方数据请求);插件必须由腾讯审核通过才能使用(NPM无需腾讯审核);使用第三方插件必须向第三方申请(通过NPM使用第三方库无需向第三方申请)。所以在未来,插件或许会被第三方打包成为服务,而不仅仅只是一个代码库。

如何开发微信小程序插件?

下载最新的微信小程序开发者工具,打开开发者工具,进入小程序项目。

1.jpg

点击,右下角的 “创建” 按钮,就可以创建插件了,

2.jpg

插件的AppId和之前的微信小程序的AppId是同个道理,需要在微信开发者后台新建一个微信小程序插件:

3.jpg

4.jpg

微信小程序插件的名称也必须是独一无二的,申请完毕后就可以获得插件的AppId了。填写名称和插件AppID后,就可以进入小程序项目。

在文件 project.config.json 中,我们看到代码如下:

{    miniprogramRoot:./miniprogram,    pluginRoot:./plugin,    compileType:plugin,    setting: {        newFeature: true    },    appid: .....,    projectname:videoPlayer,    condition: {}}

miniprogramRoot:配置小程序的根目录,可以使用小程序来测试编写的插件

pluginRoot:插件相关代码所在的根目录

compileType:项目的编译类型,必须配置为 plugin,在上传代码的时候才会以插件的方式上传到腾讯服务器。

在 plugin/plugin.json 文件中,代码如下:

{  publicComponents: {    hgPlayer:components/player/player  },  main: index.js}

publicComponents:配置的是插件可以给使用的小程序提供哪些组件,一个插件可以定义很多个组件,组件和组件之间相互引用,但是小程序只能使用在publicComponents里配置的组件。

main:定义入口文件,在入口文件 index.js 中定义小程序可以使用插件的那些接口。

在 plugin/index.js 文件中,代码如下:

var data =require(\'./api/data.js\')module.exports= {  getData: data.getData,  setData: data.setData}

在 plugin/index.js 定义了对外抛出接口为 getData 和 setData,小程序在使用这个插件的时候,只能使用到插件提供的这两个接口,插件的其他接口(或方法)小程序无法使用。

做好以上配置后,就可以开始在 plugin/components 编写组件代码了。

代码编写完毕后,注意在 plugin/plugin.json 文件配置。配置好后,我就可以上传插件代码到腾讯服务器,进入微信小程序开发者后台提交审核,腾讯审核通过后,第三方小程序就可以使用我们编写的这个插件了。

如何使用第三方插件

使用第三方插件之前,需要进入微信小程序开发者后台,在第三方服务里添加插件:

5.jpg

6.jpg

填写第三方插件的AppId,点击添加按钮,对方账号的 小程序插件 > 申请管理 会出现你的申请,

7.jpg

需要第三方同意你的申请后,你就可以开始使用第三方插件了。

使用第三方插件的时候,需要在 我们自己的小程序的 app.json 做如下配置:

{  pages: [    pages/index/index  ],  plugins: {    myPlugin: {      version: dev,      provider: 填写申请通过的插件AppId    } }}

plugins: 配置的要使用的第三方插件列表。

插件列表配置好后,由于每个插件可能会有多个组件,所以需要我们在每个页面定义要使用到的组件,例如,在 index.js 中要使用 hgPlayer 这个组件,需要在 index.json 配置。配置好 index.json 后,就可以在 index.wxml 直接使用了。

推荐:《小程序开发教程》

以上就是如何开发小程序插件?的详细内容,更多请关注其它相关文章!


  • 上一条:
    小程序如何实现分页加载数据功能?
    下一条:
    iPhoneX安全区域(Safe Area)底部小黑条在微信小程序和H5的屏幕适配
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 微信模板消息改版后发送规则记录(微信订阅消息参数值内容限制说明)(1个评论)
    • 微信支付v3对接所需工具及命令(0个评论)
    • 2023年9月1日起:微信小程序必须备案才能上线运营(0个评论)
    • 腾讯官方客服回应了:微信好友上限约10000个!(1个评论)
    • 2023年做微信小程序的老铁注意:新增收费项、微信小程序获取手机号也收费了(2个评论)
    • 近期文章
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 在go + gin中gorm实现指定搜索/区间搜索分页列表功能接口实例(0个评论)
    • 在go语言中实现IP/CIDR的ip和netmask互转及IP段形式互转及ip是否存在IP/CIDR(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • Laravel 11.15版本发布 - Eloquent Builder中添加的泛型(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-10
    • 2017-10
    • 2018-01
    • 2020-03
    • 2021-06
    • 2021-10
    • 2022-03
    • 2023-02
    • 2023-06
    • 2023-07
    • 2023-08
    • 2023-10
    • 2023-11
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客