es6 - 从一些没有别名的js文件导入所有函数,用于创建webpack包

时间:2018-04-14 20:27:30

标签: javascript webpack ecmascript-6

我有很多js文件,其中有更多功能。这样的东西:

// first file
function name1(){...}
function name2(){...}
function name3(){...}
function name4(){...}
...
// ...second file
function name(){...}
...

并且有一个入口点,我想导入该模块并连接webpack捆绑的所有命名空间,但我不能使用

import * as alias from "modules/myModules";

因为在我的HTML中我有属性onclick,我不写别名。 我需要这样的东西:

import { * } from "module/myModules"

在这种情况下我该怎么办? (我是用HTML写别名,还是有更好的主意?)

2 个答案:

答案 0 :(得分:1)

考虑到这个线程(es6 - import all named module without alias)和MDN's import spec page,没有es6语法可以导入没有别名的所有符号。

此外,最佳做法是命名您的javascript。良好的命名空间可防止多次导入之间难以调试的名称冲突。

最后,标记属性样式处理程序只能访问全局定义。根据{{​​3}},您可以将函数添加到全局范围,也可以通过javascript添加它,如

document.querySelector("#container button").addEventListener("click", createNotification);

我建议您使用专用模块将事件绑定到您的页面。这将阻止UI操作泄漏到您的逻辑中。

答案 1 :(得分:1)

你可以尝试

import "module/myModules";

它应该将你的文件添加到bundle。