Javascript 无法从作为类型模块导入的js文件调用函数

Javascript 无法从作为类型模块导入的js文件调用函数,javascript,html,ecmascript-6,es6-modules,Javascript,Html,Ecmascript 6,Es6 Modules,我正在使用模块导入在ES6中编写Javascript文件。现在大多数现代浏览器都支持使用type='module',以便正确解析导入语句。 脚本类型=模块 我构建了一个HTML select元素,该元素是onchange使用 选择onchange=someFunction 但是,在发生on change事件时,始终会抛出一个错误,说明函数未定义。 我内联测试了相同的函数,也没有使用type=module,没有预期的问题 这是虫子吗?这与默认情况下延迟的模块脚本有关吗?我错过了一些简单的东西吗

我正在使用模块导入在ES6中编写Javascript文件。现在大多数现代浏览器都支持使用type='module',以便正确解析导入语句。 脚本类型=模块

我构建了一个HTML select元素,该元素是onchange使用 选择onchange=someFunction 但是,在发生on change事件时,始终会抛出一个错误,说明函数未定义。 我内联测试了相同的函数,也没有使用type=module,没有预期的问题

这是虫子吗?这与默认情况下延迟的模块脚本有关吗?我错过了一些简单的东西吗


我知道我可以通过使用Webpack或框架来避免这个问题,但我真的很想尝试只使用普通的javascript,而不使用任何额外的东西。我相信在js中创建这个select元素,然后连接到dom也会解决这个问题

模块不创建全局变量。所有内容都在模块范围内


如果要绑定事件处理程序,请使用addEventListener从模块内部进行绑定,而不要使用onXxxxx属性。

在使用类型为module的脚本时,可以使用此函数

            <button onclick="import('/modules/script.js').then(o=> o.showdialog())">
export function showdialog() {}