编译配置

编译配置存放于项目根目录下的 config 目录中,包含三个文件:

  • index.js 是通用配置
  • dev.js 是项目预览时的配置
  • prod.js 是项目打包时的配置

详细的编译配置文档请查阅:编译配置详情

默认配置

config/index.js

  1. const config = {
  2. // 项目名称
  3. projectName: 'Awesome Next',
  4. // 项目创建日期
  5. date: '2020-6-2',
  6. // 设计稿尺寸
  7. designWidth: 750,
  8. // 设计稿尺寸换算规则
  9. deviceRatio: {
  10. 640: 2.34 / 2,
  11. 750: 1,
  12. 828: 1.81 / 2
  13. },
  14. // 项目源码目录
  15. sourceRoot: 'src',
  16. // 项目产出目录
  17. outputRoot: 'dist',
  18. // Taro 插件配置
  19. plugins: [],
  20. // 全局变量设置
  21. defineConstants: {},
  22. // 文件 copy 配置
  23. copy: {
  24. patterns: [
  25. ],
  26. options: {
  27. }
  28. },
  29. // 框架,react,nerv,vue, vue3 等
  30. framework: 'react',
  31. // 小程序端专用配置
  32. mini: {
  33. postcss: {
  34. autoprefixer: {
  35. enable: true
  36. },
  37. // 小程序端样式引用本地资源内联配置
  38. url: {
  39. enable: true,
  40. config: {
  41. limit: 10240
  42. }
  43. },
  44. cssModules: {
  45. enable: false, // 默认为 false,如需使用 css modules 功能,则设为 true
  46. config: {
  47. namingPattern: 'module', // 转换模式,取值为 global/module
  48. generateScopedName: '[name]__[local]___[hash:base64:5]'
  49. }
  50. }
  51. },
  52. // 自定义 Webpack 配置
  53. webpackChain (chain, webpack) {}
  54. },
  55. // H5 端专用配置
  56. h5: {
  57. publicPath: '/',
  58. staticDirectory: 'static',
  59. postcss: {
  60. autoprefixer: {
  61. enable: true
  62. },
  63. cssModules: {
  64. enable: false, // 默认为 false,如需使用 css modules 功能,则设为 true
  65. config: {
  66. namingPattern: 'module', // 转换模式,取值为 global/module
  67. generateScopedName: '[name]__[local]___[hash:base64:5]'
  68. }
  69. }
  70. },
  71. // 自定义 Webpack 配置
  72. webpackChain (chain, webpack) {},
  73. devServer: {}
  74. }
  75. };
  76. module.exports = function(merge) {
  77. if (process.env.NODE_ENV === 'development') {
  78. return merge({}, config, require('./dev'));
  79. }
  80. return merge({}, config, require('./prod'));
  81. };