当我尝试type =“ module”时遇到此错误(Uncaught ReferenceError:未定义loadFoods)

时间:2020-10-01 14:17:23

标签: javascript

当我使用type =“ application / javascript”时,一切都很好。

<script type="module"  src="./assets/scripts/homepage.js></script>
<script>
   loadFoods()
</script>     

1 个答案:

答案 0 :(得分:1)

模块内部的变量仅限于这些模块。

它们并不是为了创建全局变量而设计的(尽管可以通过多种方法来实现)。

<script>元素应该是程序的入口点,而不是加载依赖项的手段。这就是import的目的。

您的方法应该更符合以下方面:

<script type="module">
    import {loadFoods} from "./assets/scripts/homepage.js";
    loadFoods();
</script>

很明显,主页模块需要显式导出loadFoods函数。