开始
安装
为了保持风格统一,如快提供了一套与软件 UI 风格一致的组件库,推荐开发者优先使用官方的组件库,以提供风格统一的使用体验。
可以用你喜欢的方式安装如快官方的组件库:
bash
npm i sofast-extensions@latest
同时,插件 api 也集成在 sofast-extensions
库中。
自定义扩展
如快的一个扩展可以包含多条指令,如模板项目中就包含了 greet
和 sayHello
两条指令。
每条指令有自己的页面,用户通过选中这条指令并回车即可进入对应的指令。
后续会增加不同指令类型,比如后台运行而没有页面的指令。
开发
新增一个Vue组件,作为插件的主页即 Greet.vue
html<template> <div class="w-full h-full grid place-items-center"> <span class="text-stone-800"> <span class="text-3xl font-bold">你好</span>,我是一个如快的插件! </span> </div> </template>
在
Sofast
的插件系统中,一个 Vue 组件被视为一个Command
,它的入口文件的固定写法为导出一个() => App
格式的函数typescriptimport Greet from "./components/Greet.vue"; import './assets/index.css' // 这里导入一下 TailwindCSS 的 base.css 文件,不使用 TailwindCSS 请忽略,当然,这里建议使用 TailwindCSS 或者 Unocss 来提高开发效率 import {createApp} from "vue"; export default () => createApp(Greet)
配置
package.json
文件,Sofast
需要用到的字段有:json{ "title": "Sofast Extension Template", "author": "Blushyes", "commands": [ { "name": "greet", "title": "打个招呼" }, { "name": "sayHello", "title": "Say Hello" } ], "description": "A template for creating a Sofast extension", "categroies": [ "template" ] }
其中,
command
是最终要的字段,声明了你这个插件需要注册的所有指令,name
字段为这个指令在src
目录下对应的文件名,比如name
为sayHello
时,指令对应的文件为src/sayHello.ts
其他字段说明待完善
接下来运行
npm run build
构建项目得到的
dist
文件夹即为我们的插件文件夹(现在还不支持导入压缩包插件)接下来,进入
Sofast
中导入插件(注意,导入插件
是开发者模式,正式加载插件是添加插件
)即可