清单的正确"Scope"设置。未按预期工作



对于我的pwa,我遇到了问题,在我所在的任何页面的末尾调用manifest.json,mydomain.com/subpage/manifest.json我认为这是不正确的,应该只为像mydomain.com/manifest.json这样的主页调用,因为那是我的清单所在(src文件夹(,其他页面应该得到正常处理,因为我相信它会导致重新加载子页面导致错误并重定向到主页的问题

从环顾四周接缝设置清单,如

"scope": "/",
"start_url": "/",

应该可以工作,但它仍然在子页面上调用mydomain.com/subpage/manifest.json,我收到错误 我读到的Uncaught SyntaxError: Unexpected token <Manifest: Line: 1, column: 1, Syntax error.与js被读取为html或其他东西有关,但idk如何发生或解决方案

我的索引只有

<link rel="manifest" crossorigin="use-credentials" href="./manifest.json">
<script async src="./pwacompat.js"></script>

Idk 如果因为它是因为清单在根中并且"范围"不会将清单限制为仅根,而是将清单限制为根中包含的所有子页面,或者这一切是如何真正工作的,或者什么是理想的只是知道它给我错误但找不到和类似的问题虽然有零碎的东西。

scope

manifest.json的加载位置没有任何影响。它不能,因为你陷入了鸡和蛋的问题。manifest.json根据您的 HTML 选项卡加载。目前您有以下内容:

<link rel="manifest" crossorigin="use-credentials" href="./manifest.json">

./manifest.json说从当前"目录"//subpage//subpage/subsubpage/加载manifest.json文件。通常,您希望始终使用以下HTML标记(不带.(从网站的根目录加载manifest.json

<link rel="manifest" crossorigin="use-credentials" href="/manifest.json">