将 JavaScript 函数导入 HTML?

Thi*_*and 4 html javascript function laravel-blade

我有一个名为“ test.js”的 JavaScript 文件,该文件中包含以下代码片段;

function functionTest() {
    console.log('this works');
}
Run Code Online (Sandbox Code Playgroud)

然后我将test.jsHTML 的头部导入到blade.php 中:

<script type="module" src="/js/test.js"></script>
Run Code Online (Sandbox Code Playgroud)

最后,在 HTML 正文部分的脚本标记中,我functionTest调用

<script>
    functionTest()
</script>
Run Code Online (Sandbox Code Playgroud)

但是我从来没有得到console.log。相反,这个错误是从我的 HTML 中抛出的;

未捕获的引用错误:functionTest 未定义<

Dav*_*ton 5

您的<script>标签正在将 JS 文件作为模块导入。

因此,它必须被视为一个模块,例如,您需要导出某些内容,然后导入它以在主文件中使用它。

如果您只想按原样使用它,而不需要进行模块工作,请type="module"<script>标签中删除 。