我想编写一个实用程序类,它将包含将在我的代码中使用的几个方法。
说Util.sayHi("Maxim") // Hi Maxim
但是我想尝试避免拉动全局范围,以及有人会覆盖我的方法的可能性。
我看到jQuery有这个问题的解决方案https://learn.jquery.com/using-jquery-core/avoid-conflicts-other-libraries/他们是如何做到的?
我正在使用React和ES6 / ES7变换器,因此可以接受新的JS功能。
答案 0 :(得分:0)
好吧,既然您使用的是ES6,那么解决方案就很简单:使用模块。他们的设计就是为了做到这一点。
// util.js
export function sayHi(name) {
console.log("Hi "+name);
}
// somewhereelse.js
import * as Util from "util.js";
Util.sayHi("Maxim");
您根本不会污染全局范围,并且您导出的变量无法从模块外部写入。