config.js 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. const path = require('path');
  2. module.exports = {
  3. /**
  4. * @description 静态资源存放路径
  5. * @type string
  6. * @default "assest"
  7. */
  8. outPutDir: 'dist',
  9. publicPath: '/',
  10. assetsDir: 'assest',
  11. /**
  12. * @description 配置开发服务器
  13. *
  14. */
  15. devServer: {
  16. port: 8080, // 默认运行端口
  17. host: '127.0.0.1',
  18. proxy: {
  19. '/api': {
  20. target: 'http://47.108.135.38:61004',
  21. },
  22. }, //转发方式
  23. },
  24. /**
  25. * @description 打包入口(如果同时配置了pages,则将忽略entry)
  26. * @type string
  27. * @default path.resolve(__dirname, '../src/index.tsx')
  28. */
  29. entry: path.resolve(__dirname, '../src/index.tsx'),
  30. /**
  31. * @description 多页面配置
  32. * @type object|undefind
  33. * @default {}
  34. *
  35. */
  36. pages: {
  37. // index: {
  38. // // page 的入口
  39. // entry: path.resolve(process.cwd(), 'src/index.tsx'),
  40. // // 模板来源
  41. // template: path.resolve(process.cwd(), 'config/index.html'),
  42. // // 在 dist/index.html 的输出
  43. // filename: 'index.html',
  44. // // 当使用 title 选项时,
  45. // // template 中的 title 标签需要是
  46. // title: 'Index Page',
  47. // // 在这个页面中包含的块,默认情况下会包含
  48. // chunks: ['index'],
  49. // },
  50. },
  51. /**
  52. * @description 配置别名,对引用路径进行映射
  53. */
  54. alias: {},
  55. /**
  56. * @description 模块分析结构
  57. * @description 如果传递false,则代表不开启代码分析插件,true则代表启用默认配置
  58. * @description 如果传递对象则代表启用默认配置,也可自定义配置
  59. * @type Boolean| {}
  60. *
  61. */
  62. analyze: false,
  63. /**
  64. * @description 设置autoprefixer 配置项
  65. */
  66. autoprefixer: {},
  67. /**
  68. * @description cssloader 相关的配置
  69. */
  70. cssLoader: {},
  71. // less相关配置项
  72. lessLoader: {},
  73. // styleloader 相关配置项
  74. styleLoader: {},
  75. //sassloader 相关配置项
  76. sassLoader: {},
  77. /**
  78. * @description postloader 相关配置项
  79. *
  80. */
  81. postcssLoader: {},
  82. postCssAutoresetOptions: {
  83. reset: 'sizes',
  84. },
  85. /**
  86. * @description 配置额外的postcss插件
  87. * @default []
  88. */
  89. extraPostCSSPlugins: [
  90. require('postcss-pxtorem')({
  91. rootValue: 18,
  92. propList: ['*'],
  93. minPixelValue: 12,
  94. exclude: /node_modules/i,
  95. }),
  96. ],
  97. //设置要复制到输出目录的文件或文件夹。
  98. copy: [],
  99. devtool: '',
  100. //设置哪些模块可以不被打包
  101. externals: {},
  102. //配置额外的babel打包插件
  103. extraBabelPlugins: [
  104. [
  105. 'import',
  106. {
  107. libraryName: 'antd',
  108. style: 'css',
  109. },
  110. ],
  111. ],
  112. //配置额外的babel预设
  113. extraBabelPresets: [],
  114. // 配置额外的webpack 插件
  115. extraPlugins: [],
  116. // 配置favicon 地址
  117. favicon: '',
  118. // 开启ts 编译时的类型检查,默认开启
  119. forkTSChecker: {},
  120. // 配置是否让生成的文件包含hash后缀
  121. hash: true,
  122. //配置图片文件是否走base64的编译的阈值
  123. inlineLimit: 10000, //10k
  124. };