前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何在FinClip中开发小程序插件?

如何在FinClip中开发小程序插件?

原创
作者头像
海岛船长加西亚
发布2022-10-25 11:29:39
1K0
发布2022-10-25 11:29:39
举报

​在上一期“如何使用小程序插件”的分享中有提到,在FinClip中开发者可以像开发小程序一样开发一个插件,而开发出来的插件,既可以提供给自己的团队使用,也可以公开出来供其他开发者使用。在插件发布之后 FinClip 会托管插件代码,其他小程序调用时,上传的插件代码会随小程序一起下载运行。

本期就详细为大家分享一下,如何在FinClip中开发小程序插件?

一、开发插件

1、创建插件项目

当完成插件小程序的创建后,可以在项目目录中发现有两个目录与一个文件:

  • plugin目录:插件代码的目录;
  • miniprogram目录:放置 FinClip 小程序,用于调试插件;
  • fide.project.config.json文件:FinClip 项目配置文件;

在 miniprogram 目录中的内容可以当成普通小程序进行编写,用来对插件进行预览、调试与审核。

2、插件目录结构

如果你通过 FIDE 创建了插件类型的小程序,也可以直接通过查看其中的内容进一步了解小程序插件。

代码语言:javascript
复制
plugin
├── components
│   ├── hello-component.js   // 插件提供的自定义组件(可以有多个)
│   ├── hello-component.json
│   ├── hello-component.fxml
│   └── hello-component.ftss
├── pages
│   ├── hello-page.js        // 插件提供的页面(可以有多个,自基础库版本 2.1.1 支持)
│   ├── hello-page.json
│   ├── hello-page.fxml
│   └── hello-page.ftss
├── index.js                 // 插件的 js 接口
└── plugin.json              // 插件配置文件

3、插件配置文件

向使用者小程序开放的所有自定义组件、页面和 js 接口都必须在插件配置文件 plugin.json列出,格式如下:

代码语言:javascript
复制
{
  "publicComponents": {
    "hello-component": "components/hello-component"
  },
  "pages": {
    "hello-page": "pages/hello-page"
  },
  "main": "index.js"
}

这个配置文件将向使用者小程序开放一个自定义组件hello-component,一个页面hello-page和 index.js下导出的所有 js 接口。

4、开发自定义组件

插件可以定义若干个自定义组件,这些自定义组件都可以在插件内相互引用。但提供给使用者小程序使用的自定义组件必须在配置文件的publicComponents段中列出(参考上文)。

除去接口限制以外,自定义组件的编写和组织方式与一般的自定义组件相同,每个自定义组件由fxml, ftssjsjson四个文件组成。具体可以参考 自定义组件的文档

json文件中需要引入自定义组件时,使用plugin://协议指明插件的引用名和自定义组件名即可,如:

代码语言:javascript
复制
{
  "usingComponents": {
    "hello-component": "plugin://myPlugin/hello-component"
  }
}

5、 开发页面

插件从小程序基础库版本 2.1.1 开始支持页面。插件可以定义若干个插件页面,可以从本插件的自定义组件、其他页面中跳转,或从使用者小程序中跳转。所有页面必须在配置文件的pages段中列出(参考上文)。

除去接口限制以外,插件的页面编写和组织方式与一般的页面相同,每个页由fxmlftssjs和 json四个文件组成。

插件执行页面跳转的时候,可以使用 navigator组件。当插件跳转到自身页面时, url应通过plugin://前缀设置为这样的形式:url="plugin://hello-plugin/hello-page",如:

代码语言:javascript
复制
<navigator id="nav" url="plugin://hello-plugin/hello-page">
  Go to Plugin page
</navigator>

同样,在插件自身的页面中,插件还可以调用 ft.navigateTo来进行页面跳转,url格式与使用 navigator组件时相仿。

6、开发接口

插件可以在接口文件(在配置文件中指定,详情见上文)中 export 一些 js 接口,供插件的使用者调用,如:

代码语言:javascript
复制
// plugin/pages/hello-page.js
Page({
  data: {},
  onLoad() {
    console.log('This is a plugin page!')
  }
})

7 、预览插件

插件可以像小程序一样预览和上传,但插件没有体验版。插件会同时有多个线上版本,由使用插件的小程序决定具体使用的版本号。手机预览和提审插件时,会使用一个特殊的小程序来套用项目中 miniprogram 文件夹下的小程序,从而预览插件。

二、上传、发布

在 FinClip 中,插件分为平台发布插件与自有插件,所有用户都可以看到平台发布的插件,普通开发者上传的插件则只可在自有团队或企业中可见。

当然如果普通开发者愿意将自己的插件共享出来、收费使用,也可以联系官方,通过官方发布到平台!

​开发者如果需要上传自有插件,需要进入「小程序管理-小程序插件」页面,点击其中的「新增插件」按钮,并在其中分别输入插件名称,头像与介绍信息以完成插件新建。

完成插件新建后,点击右侧的「更新插件」,在其中分别录入插件的版本号,更新日志,并上传代码包,就可以完成插件的上传了。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、开发插件
  • 二、上传、发布
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档