tachybase_todo/docs/zh-CN/development/plugin-ds.md

46 lines
1.4 KiB
Markdown
Raw Normal View History

# 插件目录结构
可以通过 `yarn pm create my-plugin` 快速创建一个空插件,目录结构如下:
```bash
|- /my-plugin
|- /src
|- /client # 插件客户端代码
|- /server # 插件服务端代码
|- client.d.ts
|- client.js
|- package.json # 插件包信息
|- server.d.ts
|- server.js
|- build.config.ts # 或者 `build.config.js` ,用于修改打包配置,实现自定义逻辑
```
`/src/server` 的教程参考 [服务端](./server) 章节,`/src/client` 的教程参考 [客户端](./client) 章节。
如果你想要自定义打包配置,可以在根目录下创建 `config.js` 文件,内容如下:
```js
import { defineConfig } from '@nocobase/build';
export default defineConfig({
modifyViteConfig: (config) => {
// vite 是用来打包 `src/client` 端代码的
// 修改 Vite 配置具体可参考https://vitejs.dev/guide/
return config
},
modifyTsupConfig: (config) => {
// tsup 是用来打包 `src/server` 端代码的
// 修改 tsup 配置具体可参考https://tsup.egoist.dev/#using-custom-configuration
return config
},
beforeBuild: (log) => {
// 构建开始前的回调函数,可以在构建开始前做一些操作
},
afterBuild: (log: PkgLog) => {
// 构建完成后的回调函数,可以在构建完成后做一些操作
};
});
```