首页 > 解决方案 > 两个javascript文件可以通过引用html正文进行通信吗?

问题描述

我正在尝试从functions.js导出并将其导入login.js,但是当我加载localhost:3000时出现错误“未捕获的语法错误:无法在模块外使用导入语句”和“未捕获的语法错误:意外令牌'导出'”

webpack 是唯一的解决方案吗?我处于项目的后期阶段,并试图找到简单的工作。

代码:

<html>
 <body
    <script src="/js/exports/functions.js"></script>
    <script src="/js/login.js"></script>
  </body>
</html>

标签: javascripthtmlimportexportrequire

解决方案


由于您要求一个简单的解决方法,您可以考虑使用全局变量

你所有的 JavaScript 文件都有一个共同的全局范围。浏览器脚本文件之间的通用全局对象上下文是window. 当您分配一个变量时x = 1,它会被分配给window.x. 如果您定义一个函数,就像function go() {}它被分配给window.go. 如果您尝试读取类似 的变量foo,它实际上是在寻找window.foo. 您的所有 JavaScript 文件都可以访问此window对象及其属性,无论是显式地window.foo还是隐式地使用foo.

另外值得一提的是,JavaScript 模块是一个东西。但是,如果您只是在寻找一个快速的解决方案并且现在没有时间学习新的东西,那么精心使用的全局可以让您摆脱困境。


推荐阅读