webpack.config.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. var webpack = require('webpack');
  2. var path = require('path');
  3. var autoprefixer = require('autoprefixer');
  4. var libraryName = 'DPlayer';
  5. var env = process.env.WEBPACK_ENV;
  6. var ROOT_PATH = path.resolve(__dirname);
  7. var APP_PATH = path.resolve(ROOT_PATH, 'src');
  8. var BUILD_PATH = path.resolve(ROOT_PATH, 'dist');
  9. var plugins = [];
  10. if (env !== 'dev') {
  11. plugins.push(
  12. new webpack.optimize.UglifyJsPlugin({
  13. sourceMap: true
  14. })
  15. );
  16. }
  17. module.exports = {
  18. entry: './src/' + libraryName + '.js',
  19. output: {
  20. path: BUILD_PATH,
  21. filename: libraryName + '.min.js',
  22. library: libraryName,
  23. libraryTarget: 'umd',
  24. umdNamedDefine: true
  25. },
  26. devtool: 'source-map',
  27. devServer: {
  28. publicPath: "/dist/",
  29. },
  30. module: {
  31. rules: [
  32. {
  33. test: /\.js$/,
  34. loader: 'babel-loader',
  35. include: APP_PATH,
  36. options: {
  37. presets: ['es2015']
  38. }
  39. },
  40. {
  41. test: /\.scss$/,
  42. use: [
  43. 'style-loader',
  44. 'css-loader',
  45. 'postcss-loader',
  46. 'sass-loader'
  47. ],
  48. include: APP_PATH
  49. },
  50. {
  51. test: /\.(png|jpg)$/,
  52. loader: 'url-loader?limit=40000'
  53. }
  54. ]
  55. },
  56. plugins: plugins
  57. };