未捕获的类型错误:无法解析模块说明符“...”。相对引用必须以“/”、“./”或“../”开头。在(索引):1

Aar*_*lla 5 javascript google-chrome typeerror

错误消息的堆栈跟踪仅显示“(index):1”。

我怎样才能找出错误真正发生在哪里?

我尝试启用“异常时暂停”,但这不起作用。

我也尝试添加

<script>console.log('Before loading XYZ')</script>
Run Code Online (Sandbox Code Playgroud)

元素之间<script src="...",但这些元素是按顺序执行的,而错误发生在异步加载的脚本中。

我的目标是创建一个最小的示例,我可以将其发送给 Chromium,以便他们可以改进错误消息。

我正在尝试加载 Vue 组件,并且在加载 vue.js 之后发生错误(我知道是因为我在vue.esm.browser.js该行的底部有一个断点Vue.compile = compileToFunctions;)。

铬77

Aar*_*lla 5

我找到了两种方法:

  1. 比较哪些脚本在“网络”选项卡中加载,哪些脚本可以在“源”选项卡中看到。“来源”选项卡中将缺少有错误的内容。
  2. 添加console.log('...');到您正在加载的每个脚本的头部。导入损坏的脚本不会执行任何日志记录。

一般来说,查找按模块名称/说明符导入的脚本,如下所示:

import Vue from "vue";
Run Code Online (Sandbox Code Playgroud)

而不是通过路径加载:

import Vue from "./vue.js";
Run Code Online (Sandbox Code Playgroud)

模块说明符不包含/并且没有扩展名。它们可以在 Node 等环境中工作,但不能在浏览器中工作。另请参阅:es6 导入和导出中的模块说明符