module.exports客户端

Par*_*ris 21 javascript browser module node.js requirejs

我创建了一个节点模块,它本质上只是一些有用的JS,也可以在客户端使用.我知道require.js可以加载common.js组件,但我不一定要强制要求使用我的模块客户端的每个人都需要require或common.js等.我也不想强迫他们删除module.exports = ...文件底部的内容.别人怎么解决这个问题?你刚创建2个版本,还是2个"编译"版本?module.exports到处工作吗?

Jon*_*Ong 21

这是underscore.js的作用:

if (typeof exports !== 'undefined') {
  if (typeof module !== 'undefined' && module.exports) {
    exports = module.exports = _;
  }
  exports._ = _;
} else {
  root['_'] = _;
}
Run Code Online (Sandbox Code Playgroud)


fro*_*rli 7

我发现这更简单:

try {
   module.exports = exports = MyModule;
} catch (e) {}
Run Code Online (Sandbox Code Playgroud)

该文件可以同时包含在浏览器和node.js中。