javascript - 将 javascript 作为 ES6 模块或通过页面中的脚本标签加载
问题描述
对任何类型的 JS 模块都相当陌生。我有一个简单的香草 JS 脚本,旨在通过脚本标签加载到 html 文档中。基本上...
// invoke main function when DOM is ready
document.addEventListener("DOMContentLoaded", function() {
MainFunction();
});
var MainFunction = function() {
// check for specific DOM nodes upon invocation...
}
效果很好。但我也希望能够MainFunction
作为模块导出提供,以便我可以将其导入到 webpack 包中,例如:
import MainFunction from 'myclassicscript';
然后我可以在主包中根据需要调用它:
MainFunction();
如何以两种方式使用相同的脚本。我似乎找不到任何关于如何做到这一点的信息,但我可能有完全错误的想法。
就像是...?
// check if this is a browser environment...
if (typeof window !== 'undefined') {
// invoke main function when DOM is ready
document.addEventListener("DOMContentLoaded", function() {
MainFunction();
});
}
var MainFunction = function() {
// check for specific DOM nodes upon invocation...
}
// ???
export default MainFunction;
解决方案
推荐阅读
- matlab - 如何根据旧矩阵中的列值制作新矩阵?
- java - 发布到 Maven 中心时缺少 jar 的签名 jar.asc
- c# - 单元测试未涵盖 LINQ `Any`
- javascript - 使用多个骰子时计算给定骰子掷骰的机会
- c# - 无法将“System.Single”类型的对象转换为“System.Double”类型。
- c++ - 哪些编译器支持在运行时固定大小的数组,哪些编译器不支持?
- python - 在 Pandas DataFrame 重新索引上丢失数据
- regex - 如何规范地解析模块名称
- azure-active-directory - Azure AD 如何将用户扩展属性传递给多租户应用程序
- dart - Dart 指定列表仅包含从另一个类扩展的对象