From f6fb3b3970b53ff668309f42afb1ef3cf6757209 Mon Sep 17 00:00:00 2001 From: Ju4tCode <42488585+yanyongyu@users.noreply.github.com> Date: Sat, 21 May 2022 22:03:19 +0800 Subject: [PATCH] =?UTF-8?q?:memo:=20Docs:=20=E6=9B=B4=E6=96=B0=20require?= =?UTF-8?q?=20=E6=A0=B7=E4=BE=8B=20(#996)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- website/docs/tutorial/plugin/load-plugin.md | 26 +++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/website/docs/tutorial/plugin/load-plugin.md b/website/docs/tutorial/plugin/load-plugin.md index b3339e58..e1a66ce7 100644 --- a/website/docs/tutorial/plugin/load-plugin.md +++ b/website/docs/tutorial/plugin/load-plugin.md @@ -103,16 +103,34 @@ nonebot.load_builtin_plugin("echo") ## 确保插件加载和跨插件访问 -倘若 `plugin_a`, `plugin_b` 均需被加载, 且 `plugin_b` 插件需要导入 `plugin_a` 才可运行, 可以在 `plugin-b` 利用 `require` 方法来确保插件加载, 同时可以直接 `import` 导入 `plugin-a` ,进行跨插件访问。 +倘若 `plugin_a`, `plugin_b` 均需被加载, 且 `plugin_b` 插件需要导入 `plugin_a` 才可运行, 可以在 `plugin_b` 利用 `require` 方法来确保插件加载, 同时可以直接 `import` 导入 `plugin_a` ,进行跨插件访问。 + +```python title=plugin_b.py +from nonebot import require -```python -from nonebot.plugin import require require('plugin_a') + import plugin_a ``` :::danger 警告 -不用 `require` 方法也可以进行跨插件访问,但需要保证插件已加载。 +不用 `require` 方法也可以进行跨插件访问,但需要保证插件已加载。例如,以下两种方式均可确保插件正确加载: + +```python title=bot.py +import nonebot + +# 顺序加载 +nonebot.load_plugin("plugin_a") +nonebot.load_plugin("plugin_b") +``` + +```python +import nonebot + +# 同时加载 +nonebot.load_all_plugins(["plugin_a", "plugin_b"], []) +``` + ::: ## 嵌套插件