开发 | 一篇文章,带你从 0 到 1 开发小程序插件

11
发表时间:2020-11-16 16:10

    前不久,微信释放了一个重磅新能力:微信小程序插件功能。有了它,小程序开发者就可以通过这个功能,强化自身小程序能力;小程序服务提供商也可以用它,为开发者、用户提供强大的小程序功能支持,进一步拓展小程序能力。

    插件固然好,但如何从零开发一个插件呢?今天,知晓程序就来手把手,教你如何从零开发一款微信小程序插件。

    关注「

    知晓程序

    」微信公众号,回复「

    开发

    」,获取小程序开发技巧大全。

    新建插件工程

    新建插件的操作非常简单。只需要在微信开发者工具中新建小程序项目,并选择「建立插件快速启动模板」即可,开发者工具就会自动创建插件项目。

    需要注意的是,新建项目时,需要确保选择的项目目录是空目录,否则不会显示「建立插件快速启动模板」选项。

    插件目录结构

    生成的项目结构主要分为两大块,一个是

    plugin,一个是

    miniprogram。

    plugin中放置我们插件的逻辑代码,主要分为

    api和

    components两个部分;

    miniprogram中放置的是插件的使用示例或者测试示例。

    插件API接口开发

    以写一个返回「helloworld!」的接口为例,我们可以在

    plugin/api/data.js中写下如下代码:

    functionsayHelloWorld(){return'helloworld!'}module.exports={sayHelloWorld}

    在

    plugin/index.js中将我们需要暴露出需要给插件使用者使用的接口:

    vardata=require('./api/data.js')module.exports={sayHelloWorld:data.sayHelloWorld}

    然后在

    plugin/plugin.json的配置文件中,配置插件的入口,默认如下:

    {""main"":""index.js""}

    然后在miniprogram中使用该接口。如在miniprogram/pages/index/index.js中使用:

    varplugin=requirePlugin(""myPlugin"")Page({onLoad:function(){console.log(plugin.sayHelloWorld())}})

    其中

    myPlugin为我们的插件名,微信默认配置。

    插件组件开发

    同样,以写一个显示「helloworld!」的组件为例,在

    plugin/components下新建一个helloWorld文件夹,点击该文件夹,右键生成组件,与普通组件一样,生成以下四个文件。

    在

    helloWorld.wxml中编写视图代码:

    <view>helloworld!</view>

    同样,在

    plugin/plugin.json中配置需要暴露给插件使用者使用的组件:

    {""publicComponents"":{""hello-world"":""components/helloWorld/helloWorld""},""main"":""index.js""}

    在需要引用到该组件的页面的配置文件中,做好配置即可,加入我们要在

    index页面使用,则需要在

    miniprogram/pages/index/index.json中进行如下配置:

    {""usingComponents"":{""hello-world"":""plugin://myPlugin/hello-world""}}

    然后再在

    miniprogram/pages/index/index.wxml中使用:

    <hello-world/>

    接下来,我们只需完整开发插件,然后选择上传,最后提交审核、发布,其他人就可以使用你的插件了。


最新更新

2025

12-03

  在当今数字化时代,官网已成为城市形象展示的重要窗口。常州作为一座历史悠久又充满现代活力的城市,借助WebGL技术打造具有3D和交互元素的官网,能够极大提升用户体验和视觉冲击力。WebGL是一种基于OpenGL的Web图形库,允许在浏览器中高效渲染3D图形,无需安装额外插件。这意味着访客可以直接通过网页感受到逼真的三维场景和流畅的交互操作,从而更深入地了解常州的文化、旅游和经济特色。  从...

2025

12-03

  极简主义的核心在于剔除冗余,聚焦本质。对于常州城市网站而言,这意味着重新审视每一处设计元素与内容区块,确保它们均直接服务于用户需求和沟通目标。通过减少视觉干扰与简化导航路径,网站不仅能够更快地传递信息,也更易维护和适配多端设备,从而提升整体可用性与专业感。  内容策略是极简设计成功的关键。应优先展示常州的核心城市价值,如历史文化、旅游资源、产业特色等,避免页面信息过载。采用大量留白、简洁...

2025

12-04

  Robots.txt是一个看似简单却至关重要的文件,它如同搜索引擎爬虫的“交通指挥”,告诉它们哪些页面可以抓取、哪些应被忽略。对于常州企业网站,正确配置Robots.txt能避免敏感内容被索引,提升抓取效率,并保护网站资源。本文将深入探讨其配置原则与常见实践。  首先,Robots.txt文件需放置在网站根目录(例如www.example.com/robots.txt),以便爬虫轻松访问...

2025

12-04

  重复内容一直是SEO领域的常见难题,它可能分散页面权重、降低搜索引擎排名,甚至导致索引混乱。而canonical标签(又称“规范标签”)则是解决这一问题的有效技术手段,尤其对于常州企业网站而言,正确使用它能够consolidates页面价值,提升SEO效果。本文将解析canonical标签的原理与应用场景。  首先,canonical标签是一种HTML元素(<link rel=""...

2025

12-05

  常州的企业在建设网站或开展在线业务时,常会面临一个关键选择:是使用云服务器(ECS)还是传统虚拟主机?这两种主机方案各有优劣,如何决定取决于企业的具体需求、技术能力与预算水平。没有绝对最好的选项,只有最适合当前阶段的选择。  虚拟主机相当于在服务器上租用一个小空间,提供商已经配置好环境、数据库和备份机制,用户只需上传网站文件即可使用。这种方式成本低、管理简单,特别适合初创企业、展示类网站...

2025

12-05

  对于常州的企业而言,网站中积累的图片、视频、文档等静态资源往往占据大量存储空间,传统服务器存储不仅成本高昂,而且在访问速度和扩展性上也存在瓶颈。对象存储(OSS)正是为解决此类问题而生——它是一种分布式存储服务,适合海量非结构化数据的低成本、高可靠存储与访问。  对象存储的核心优势在于其几乎无限的扩展能力和按实际使用量计费的模式。企业无需提前采购硬件,也不用担心存储空间不足,尤其适合资源...

2025

12-02

  在当前的网络环境中,常州企业面临的网络安全威胁日益复杂,其中CC攻击和DDoS攻击是最常见的两种形式。CC攻击主要通过模拟大量用户请求耗尽服务器资源,而DDoS攻击则利用多个受控主机发起流量洪水,导致服务瘫痪。针对这些威胁,企业需采取多层次防护策略,确保业务连续性。  技术层面,部署高性能防火墙和入侵检测系统是基础步骤。企业可结合流量清洗服务,识别并过滤恶意流量。同时,通过负载均衡设备分...

2025

12-02

  嘿,各位常州的企业主和开发者们!今天我们来聊聊怎么给你们的网站穿上一件坚固的“盔甲”——Web应用防火墙(WAF)。别看这个名字听起来高大上,其实它就是一道站在你的网站和恶意攻击之间的智能防线。想象一下,如果没有WAF,你的网站可能随时会被注入攻击、跨站脚本(XSS)或者SQL入侵搞得一团糟。  首先,你得选择一个靠谱的WAF产品。市场上有云WAF和硬件WAF两种主流类型,云WAF部署简...

2025

12-01

  签订网站建设合同时,常州企业应重点关注一些关键条款,以规避风险并保护自身权益。首先,明确项目范围和交付标准至关重要。合同应详细列出网站的功能模块、设计要求和内容安排,避免后期因理解偏差产生争议。此外,交付物应包括源码、设计文件和相关文档,以确保企业拥有完整资产。  其次,付款方式和时间节点需要合理约定。常见的做法是分期付款,如预付30%启动金,中期付40%,尾款在验收后支付。这能督促服务...

2025

12-01

  选择一家专业的常州网站建设公司并非易事,但通过一些关键指标,我们可以有效评估其水平。首先,可以查看公司的案例作品和客户评价。优秀的公司通常会展示多样化的成功案例,包括不同行业和风格的网站,而客户反馈则能反映其服务质量和可靠性。此外,案例中的设计美观性、功能完整性以及用户体验细节,都是判断专业度的重要依据。  其次,技术能力和团队构成也是核心因素。专业的公司往往拥有成熟的技术栈,如熟悉HT...
 
 
 工作时间
周一至周五 :8:30-17:30
周六至周日 :9:00-17:00
 联系方式
客服热线:18921019311
邮箱:xukj@czcxwh.com