Skip to content

建议插件开发增加开启/关闭插件的方法 #16521

@wish5115

Description

@wish5115

In what scenarios do you need this feature?

目前虽然有/api/petal/setPetalEnabled接口,但这些并不是完整的开启/关闭插件的完整接口,只是后端部分的接口。

比如,开启或关闭插件,调用后端接口后,还需要前端做一些额外处理,参考如下代码

loadPlugin(app, response.data).then((plugin: Plugin) => {

export const loadPlugin = async (app: App, item: IPluginData) => {

因此,仅靠后端接口是无法完成真正的开启关闭插件的。

因此,建议插件开发增加真正的开启/关闭插件的方法。

为什么需要?

因为这样就可以轻易实现热加载插件。obsidian的热加载插件就是这个原理,因此能很方便的实现。而思源则只能通过模块开发时,动态加载模块来实现,常规开发无法实现。

但有时,一些简单插件是不必动用复杂的模块开发的,想仅仅通过简单的调用siyuan sdk实现一些功能即可。但由于无法实现热加载,只能靠刷新实现了。

如果支持真正的开启和关闭插件方法,就能很方便的实现热加载功能了。

Describe the optimal solution

插件开发增加开启/关闭插件的方法

Describe the candidate solution

No response

Other information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions