开发obsidian插件时,如何引入外部js文件

浏览了一遍在用的插件,全都只有main.js文件。不知道,在开发时,就把所有代码写在一个文件里,还是通过其他方法合并的。
尝试用Typescript生成单个文件,但是失败了……

2 个赞

一般都是合并的,一般就是用esbuild、rollup或webpack,把ts文件编译打包起来最后变成一个main.js

不过也见过有人直接在在main.js里面写一切的

1 个赞

直接用那个插件开发模板就行:

直接打包合并就好了,想要多个引入的话,我记得markmind好像可以引入pdfjs之类的三方js来着,可以看看它有没有啥值得借鉴的地方。。。

1 个赞

模板里没有涉及这个内容

直接在ts里面import就行了啊

1 个赞

但是我看他说他失效了

import * as myModule from '/modules/my-module.js';

不清楚ob本地导入时路径是怎么算的?

欸,导不进吗,不知道你是一个js文件走天下还是用的官方模板的ts文件,我用的模板,直接像这样

import tippy from "tippy.js"

导入npm包

官方文档中也有示例,可以直接用相对路径导入自己写的文件

不过看你这路径,前面也没有表示当前文件夹的 “.”,倒像是linux系统下的绝对路径

1 个赞

不是我啦,我那是个示例啦

使用官方模版,运行 npm build 会自动打包合并到单个 main.js 文件的

1 个赞

ob 只会读取 main.js,而生成 main.js 已经把各种路径的文件都加载里面了。

原来如此,怪我直接tsc了( p_q)