utquidem
Version:
The meta-framework suite designed from scratch for frontend-focused modern web development.
48 lines (35 loc) • 2.04 kB
Markdown
---
title: 配置底层工具
sidebar_label: 配置底层工具
sidebar_position: 2
---
## 使用方式
Modern.js 内部默认集成了 [Babel](https://babeljs.io/)、[TypeScript](https://www.typescriptlang.org/)、[Webpack](https://webpack.js.org/)、[PostCSS](https://postcss.org/)、[Tailwind CSS](https://tailwindcss.com/) 等工具。通常情况下,默认配置能够满足大多业务开发需求。当有特殊需求时,可以通过底层配置来实现。
以配置 Webpack 为例,只需要在 `modern.config.js` 中添加 [`tools.webpack`](/docs/apis/config/tools/webpack) 即可:
```js title="modern.config.js"
export default defineConfig({
tools: {
webpack: config => {
}
}
})
```
`tools` 命名空间下的配置都可以设置为 `Object` 或者 `Function`。
值为 `Object` 时,会与内部默认配置进行合并,具体合并策略参考对应的配置选项文档(见下表)。
值为 `Function` 时,第一个参数为内部的默认配置对象,可以直接修改这个对象不做返回,也可以返回一个新的对象或者合并后的对象作为最终结果。
## 底层配置明细
目前提供的底层配置如下表:
| 底层工具 | 配置 |
| -------- | --------- |
| DevServer | [tools.devServer](/docs/apis/config/tools/dev-server) |
| Babel | [tools.babel](/docs/apis/config/tools/babel)|
| styled-components | [tools.styledComponents](/docs/apis/config/tools/styled-components)|
| PostCSS | [tools.postcss](/docs/apis/config/tools/postcss)|
| Less | [tools.less](/docs/apis/config/tools/less) |
| Sass | [tools.sass](/docs/apis/config/tools/sass) |
| webpack | [tools.webpack](/docs/apis/config/tools/webpack)|
| Minify CSS | [tools.minifyCss](/docs/apis/config/tools/minify-css)|
| terser | [tools.terser](/docs/apis/config/tools/terser)|
| Lodash | [tools.lodash](/docs/apis/config/tools/lodash)|
| Tailwind CSS | [tools.tailwind](/docs/apis/config/tools/tailwindcss) |
| Autoprefixer | [tools.autoprefixer](/docs/apis/config/tools/autoprefixer) |