【发布时间】:2020-06-09 20:21:28
【问题描述】:
我有以下文件夹结构:
在我的 js 里面我有:
fetch("sdk-article.html").then(stream => stream.text()).then(text => define(text));
但是,当我尝试这样做时,它尝试的路径不是文件夹的完整路径。 (这意味着我找不到文件)
我也试过了:fetch("-/sdk-article.html").then(stream => stream.text()).then(text => define(text));
但是没有运气。
有没有一种简单的方法可以从与请求文件相同的文件夹中加载文件?
更新 ./sdk-article 方法
这似乎不是:
fetch("./sdk-article.html").then(stream => stream.text()).then(text => define(text));
【问题讨论】:
-
相对路径使用
./sdk-articles.html -
@Keith 路径需要相对于公用文件夹的根目录。
-
“它尝试的不是文件夹的完整路径”,而是 “来自与请求它的文件相同的文件夹”。当它们在同一个文件夹中时,为什么要“完整路径”?
-
不幸的是,JS 不知道它是从哪里加载的,调用者是从哪里加载的。正如 cmets 中所指出的,您可以从遍历文档的加载脚本中提取工作目录,然后解析 URL,但是如果您有多个脚本,那么您当然需要找到正确的脚本,您可以在脚本标签上使用 id。
标签: javascript fetch