首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Obsidian.md插件:“黑石”未定义

Obsidian.md插件:“黑石”未定义
EN

Stack Overflow用户
提问于 2022-05-08 13:50:53
回答 1查看 272关注 0票数 0

我目前正在为obsidian.md编写一个插件,它在代码块中呈现数学函数。我用webpack来捆绑像yaml和功能绘图这样的节点库。在配置中,我将'obsidian‘作为外部添加。插件的构建带有关于包大小的警告,但这并不重要,因为它是本地的。当我添加插件时,它总是说‘黑石’没有定义‘。我想它是在全球范围内寻找黑暗面,却找不到它?这是回购:https://github.com/leonhma/obsidian-functionplot,你知道如何正确配置webpack吗?可能有一些非常简单的修复,但我也是新的类型记录,webpack和开发插件的黑石。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-09 14:08:21

谢谢你的建议(为什么我没有想到呢?)首先,webpack生成的文件如下所示

代码语言:javascript
运行
复制
function(obsidian) {
... (around 300kb code)
}(obsidian);

因此webpack试图访问一个叫做“黑石”的全球物体。webpack.config.js的重要部分是

代码语言:javascript
运行
复制
...
externals: [
    obsidian: 'obsidian'
],
...

按照你的建议,我看了另一个回购,他们用

代码语言:javascript
运行
复制
...
externals: [
    obsidian: 'commonjs2 obsidian'
],
...

这解决了我的问题,现在在运行时正确地导入了黑石。如果别人有这个问题,我自己也找不到答案,就把这个贴出来吧。

PS:对于那些感兴趣的人来说,因为你肯定在开发黑石插件:在webpack配置中将output.libraryTarget设置为commonjscommonjs2也是非常重要的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72161656

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档