(1)process.env

process是node的一个全局模块,可以用它来得到node进程的一些相关信息,比如环境变量

(2)defineConfig


hash

配置是否让生成的文件包含 hash 后缀,通常用于避免浏览器加载缓存。
image.png


antd

整合 antd 组件库

  1. antd: {
  2. dark: true, // 开启暗色主题
  3. compact: true, // 开启紧凑主题
  4. },

dva

整合 dva 数据流

  1. dva: {
  2. immer: true, // 表示是否启用 immer 以方便修改 reducer
  3. },

dynamicImport

是否启用按需加载,即是否把构建产物进行拆分

  1. dynamicImport: {
  2. loading: '@/components/PageLoading/index', // 也可以自定义loading加载
  3. },

image.pngimage.png


targets

配置需要兼容的浏览器最低版本

  1. targets: {
  2. ie: 11,
  3. },

theme

配置主题
image.png

  1. theme: {
  2. 'primary-color': defaultSettings.primaryColor,
  3. },
  4. // 以下是可配置项
  5. @primary-color: #1890ff; // 全局主色
  6. @link-color: #1890ff; // 链接色
  7. @success-color: #52c41a; // 成功色
  8. @warning-color: #faad14; // 警告色
  9. @error-color: #f5222d; // 错误色
  10. @font-size-base: 14px; // 主字号
  11. @heading-color: rgba(0, 0, 0, 0.85); // 标题色
  12. @text-color: rgba(0, 0, 0, 0.65); // 主文本色
  13. @text-color-secondary: rgba(0, 0, 0, 0.45); // 次文本色
  14. @disabled-color: rgba(0, 0, 0, 0.25); // 失效色
  15. @border-radius-base: 2px; // 组件/浮层圆角
  16. @border-color-base: #d9d9d9; // 边框色
  17. @box-shadow-base: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08),
  18. 0 9px 28px 8px rgba(0, 0, 0, 0.05); // 浮层阴影

manifest

配置是否需要生成额外用于描述产物的 manifest 文件,默认会生成 asset-manifest.json

  1. manifest: {
  2. basePath: '/', // 给所有文件路径加前缀
  3. },

image.png
最后,我们来分析下 routes,在红色框中是加载的布局文件,当我们访问路由为:”/user”、”/“…,系统会依次加载 layouts 文件下的 UserLayout.jsx、SecurityLayout.jsx、BasicLayout.jsx,我们可以在设计布局及权限控制。

当然了,如果我们不喜欢它的基础布局(比如登陆页面),我们也可以自行编写,然后在上述红色框位置加载即可。

其中,这三个文件中具体内容,我们也会在后面的文档中逐一讲到。