feat(plugins): 动态加载插件
- 新增插件动态加载逻辑,遍历已发现的插件列表 - 对于每个插件,尝试导入其 index.ts 文件 - 导入成功后,将插件注册到应用中,并打印加载信息 -导入失败时,打印错误信息,提示插件下无 index.ts 文件
This commit is contained in:
@@ -22,4 +22,13 @@ export const scanAndInstallPlugins = (app: any) => {
|
||||
}
|
||||
pluginsAll = Array.from(pluginNames);
|
||||
console.log('已发现插件:', pluginsAll);
|
||||
for (const pluginName of pluginsAll) {
|
||||
const plugin = import(`./${pluginName}/index.ts`);
|
||||
plugin.then((module) => {
|
||||
app.use(module.default)
|
||||
console.log(`${pluginName}插件已加载`)
|
||||
}).catch((error) => {
|
||||
console.log(`${pluginName}插件下无index.ts`)
|
||||
})
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user