基于Webpack ES6 搭建umd javascript类库

webpack output配置

 output: {
        path: path.join(__dirname, 'dist'),
        filename: 'JSSDK.js', //文件名
        publicPath: '/dist/', //发布路径
        library: 'JSSDK', //类库名称
        libraryTarget: 'umd', //类库加载方式
        umdNamedDefine: true
    },

打包后文件头增加了这段代码,可以识别不同的运行环境,并为我们的类库提供一个妥当的初始化机制。

(function webpackUniversalModuleDefinition(root, factory) {
  if(typeof exports === 'object' && typeof module === 'object')
    module.exports = factory();
  else if(typeof define === 'function' && define.amd)
    define("JSSDK", [], factory);
  else if(typeof exports === 'object')
    exports["JSSDK"] = factory();
  else
    root["JSSDK"] = factory();
})(this, function() {
return (function(modules) {
 ...
 ...

你可能感兴趣的:(基于Webpack ES6 搭建umd javascript类库)