热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

从原理到应用,一文带你了解微信小程序插件能力

3月13日,微信小程序插件功能上线;8月底,在时隔半年后,为进一步推广插件功能,微信在开发者社区上线了插件版块。小程序插件是可以被开发者添加到小程序内直接使用的,能为用户提供具体服

3月13日,微信小程序插件功能上线;8月底,在时隔半年后,为进一步推广插件功能,微信在开发者社区上线了插件版块。

小程序插件是可以被开发者添加到小程序内直接使用的,能为用户提供具体服务的功能组件——

  • 插件开发者可像开发小程序一样开发插件,除了在自己的小程序内使用,还能提供给其他小程序直接使用。
  • 插件使用者无需独立开发小程序内的所有服务,无需理解插件内部逻辑和实现方式,可直接使用别人开发好的插件,为用户提供相应服务。

在最新上线的社区插件版块中,插件使用者可以搜索并查看插件的名称、AppID、适用行业及场景、线上案例等信息。

《从原理到应用,一文带你了解微信小程序插件能力》

《从原理到应用,一文带你了解微信小程序插件能力》

想了解更多详情,欢迎访问开发者社区插件版块(建议电脑访问):

🔗 https://developers.weixin.qq….

手机端用户也可以扫码访问 👇

《从原理到应用,一文带你了解微信小程序插件能力》

为何推出小程序插件

小程序的初衷是希望更好地连接用户和服务。自上线以来,越来越多的商户、开发者开发自己的小程序。

早晨起来在小区电梯内,扫小程序码,即可叫个早餐外卖;走到门口,扫共享单车的二维码,骑车即走;到了公司,即可打开小程序轻松打卡,开始美好的一天上班生活……

而随着小程序的普及,越来越多的路边小摊、餐饮小店、夫妻店也希望接入小程序,许多商家会反映亟待解决的问题到微信平台:

我只会简单开发,不会做复杂的功能怎么办?

我也想给餐馆小程序做一个预约订餐功能,要怎么搞?

客户可以在我的小程序里查询快递信息吗?

我没有数据,可以在小程序里做地图查找功能吗?

……

根据用户的反馈,我们总结出了大家目前遇到的三大难题:

开发技术有限,实现复杂功能难度大;

人力、设备、资源有限,实现服务成本高;

缺乏某些类目的资质,如电商、打车。

对于以上问题,我们推出了小程序插件来解决。

小程序插件的应用

1.开发共享,避免重复开发

在小程序内使用插件,可免去小程序开发者重复开发,一定程度上减少了开发工作量。

如:在旅游景区的小程序可以使用地图插件,开发者无需在小程序内独立开发地图内导航、出行指引、周边服务推荐等能力,直接使用地图插件即可为用户提供导航服务,免去很大量的开发工作。

2.插件可提供针对行业的完整服务,同时覆盖线上线下

商家希望借助小程序更好地连接用户和服务,包括线上、线下服务。线下服务往往人力成本、硬件设备等要求较高,商家在小程序内提供完整服务的门槛较高。而插件不仅可以解决线下服务的问题,还能针对特定行业提供全套完整服务。

以景区服务小程序为例,使用门票购买插件,用户可在小程序内完成门票线上预订、购买等流程,在到达景区后,通过插件服务提供商提供的移动终端或硬件设备,可完成门票兑换、核销。

而对于餐饮、零售等线下行业而言,插件更是极大降低了商家的成本,商家可以使用预订、排队、外卖等插件,由插件开发者提供线下服务,商家只需在小程序内引用插件,即可使用由插件开发者提供的预订、外卖等服务,节省了成本。

3.降低服务门槛的问题,实现「服务共享」

具有开发能力及服务资质的开发者,可将自己的服务封装成插件,提供给其他小程序使用,实现「服务共享」。

插件的技术原理

插件本身的技术原理并不复杂。插件代码由一些自定义组件和 JS 代码文件构成,插件开发者在发布插件时,这些代码被上传到微信后台保存起来。

当小程序使用插件时,使用者需填写插件的 AppID 和版本号,以便从后台获取相应的插件代码。小程序代码编译时,插件代码会被嵌入到小程序中,与小程序一起编译运行。

小程序与插件的交互

根据需要,插件代码可以提供 JS 接口或自定义组件供小程序调用。JS 接口可以用于界面无关的逻辑,自定义组件可以嵌入界面中展示。

对于插件使用者来说,插件的调用方法很简单。

使用插件 JS 接口

与普通 JS 文件间 require 的方式一样,只需将 require(FILE_NAME) 改成requirePlugin(PLUGIN_NAME) 这样的调用形式。

使用插件提供的自定义组件

与使用普通自定义组件的方法非常相似。在 JSON 文件的 usingComponents 段落中,按照plugin://PLUGIN_NAME/COMPONENT_NAME 的形式使用即可。

对于插件开发者而言,这里给出几点建议:

提供充分的接口文档和示例,方便插件使用者了解插件的使用方法;

注意保持插件不同版本间接口的稳定,使插件使用者能顺利升级插件;

计算小程序代码包大小时,插件代码也会一并计算在内,所以应当控制好插件代码的大小。

插件代码运行环境

插件代码的运行环境与小程序代码有一定的区别,主要是以下两点:

插件可以发起网络请求的域名与小程序不同,因此插件开发者需要注意在插件后台的设置中正确配置网络请求域名。

插件可以调用的 API 有一定的限制,并不是所有的接口插件都可以调用,如页面跳转相关的接口是不允许插件调用的。插件开发者在使用一些特殊接口前,请查询文档中的插件可调用接口列表。

此外,目前一个小程序最多可使用 5 个插件,赶紧将插件用起来,节约开发者成本吧。

详情可参考《小程序插件接入指南》(建议电脑访问):

🔗https://developers.weixin.qq….

内容来自:微信开放社区《小程序·小故事》栏目

作者:小 k、LastLeaf

任何问题,欢迎前往微信开放社区:
https://developers.weixin.qq.com

了解更多小程序开发相关内容,欢迎微信扫描下方二维码关注微信极客WeGeek公众号,共筑微信生态。

《从原理到应用,一文带你了解微信小程序插件能力》


推荐阅读
author-avatar
钟z4z萍
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有