帮助者和效用函数的类似库的方法

时间:2017-07-07 19:11:00

标签: javascript dom

我正在开发一个使用vanilla JS进行DOM操作的主要方法的项目,最后我得到了大量的实用程序/辅助函数来包装DOM方法以保持一致性和一些额外的效果。

我最终得到了许多像这样的类似助手:

export const containsClass = (el, class) => {
  return el.classList.contains(class)
}

export const selectAll = (class) => {
  return [...document.querySelectorAll(class)]
}

我正在考虑使用类似库的方法来做这样的事情:

const myHelpers = (class, el) => {
  return new Mono.prototype.init(class, el)
}

myHelpers.prototype = {
  init: (class, el) => {
     this.class = class
     this.el = el
   }
  selectAll: (class) => {
      return [...document.querySelectorAll(class)]
  }
}

export const someShortAlias = myHelpers.prototype

(请注意,代码是通过Webpack捆绑的,我使用的是导入/导出语句,这就是我没有选择IIFE的原因)

我的想法是,这将清除全局名称空间并使代码更有条理。正如评论中指出的那样,由于我使用模块,因此无法清除命名空间。

所以我想尝试这个的原因仅仅是实验性的。但是我之前没有使用过这种方法,我不确定这样做是否会影响整体评估性能或导致其他问题。所有方法都运行正常,我只是在寻找改进第二种方法的建议。

0 个答案:

没有答案