脚本版本号导致未定义的变量

时间:2019-04-01 10:27:32

标签: javascript html

我有一个带有版本参数的javascript文件,每次更改它都会使其重新加载。

<script type="module" src="js/main.js?20190327-1"></script>

有时我尝试访问变量,但出现未定义的错误。我将变量打印到控制台,得到以下结果(第703行是变量集,第279行是get):

我两次打电话给同一个东西,第二次似乎可以。我注意到的是它将文件名从“ main.js”更改为“ main.js?20190327-1”。

我从src中删除了该版本,它似乎工作正常。

我是否缺少使用version参数的内容?还有什么其他方法可以迫使浏览器在每次更改版本时重新加载脚本?

谢谢。


编辑: 我发现问题是由两个脚本加载引起的

<script type="module" src="js/main.js?20190327-1"></script>

而且还可以从javascript代码中将其作为模块导入。

import * as main from './js/main.js'

这导致浏览器将其加载两次。如果我重命名所有出现的 import * as main from './js/main.js'import * as main from './js/main.js?20190327-1'一切正常。但是有什么方法可以迫使它重新加载而无需重命名所有导入内容?

0 个答案:

没有答案