tailwind 适配umijs/max

文章介绍了如何利用utility-first的CSS框架TailwindCSS结合PostCSS解决React组件中的样式问题。通过在umiMax项目中安装和配置TailwindCSS,可以实现高度自定义的主题,并利用JIT模式和purge功能优化性能。此外,还提到了在全局引入和使用TailwindCSS的方式。
摘要由CSDN通过智能技术生成

简介

utility-first的css framework。对于我而言,采用tailwind的原因如下:

对于react组件,没有纯css级别的组件。从hoc --> react hook,复用了无ui的逻辑,但依旧没有解决跨组件的css解决方案,而tailwind+postcss解决了此问题;而tailwind主题高度定义化,可以说非常方便。

安装

postcss 8.x 版本

umi Max内置了postcss、autoprefixer,使用以 PostCSS 插件的形式安装 Tailwind CSS

npm install -D tailwindcss

在 src 下创建 tailwind.css

src/tailwind.css

@import 'tailwindcss/base';

@import 'tailwindcss/components';

@import 'tailwindcss/utilities';

在项目根目录下创建 tailwind.config.ts

tailwind.config.ts

module.exports = {

  mode: 'jit',

  purge: [
    './public/**/*.html',
    './src/**/*.{js,jsx,ts,tsx}',
  ],
  darkMode: false, // or 'media' or 'class'
  theme: {
    backgroundColor: theme => ({
      ...theme('colors'),
      dark70: 'rgba(0,0,0,.7)'
    }),
    extend: {
    },
  },
  variants: {
    extend: {},
  },
  plugins: [],
}

 

修改配置

在 config/config.js 中增加配置项 extraPostCSSPlugins

//...
  extraPostCSSPlugins: [
      require('tailwindcss')({
          config: './tailwind.config.ts',
      }),
  ],

全局引入 tailwindcss

你可以在你觉得合适的地方全局引入上面创建的 tailwind.css,比如在 src/global.less 中引入:

import 'tailwind.css'; 

//...

然后你就可以在我们的页面使用了:

<div className="mt-4">
    <div className="mb-3">
    ...

好了,搞定!

 

 

UMI.js是一个基于React的全功能的企业级应用脚手架工具。它可以帮助开发者快速搭建复杂的前端项目,并提供了一系列开箱即用的功能,如热更新、跨域代理、静态资源优化等。 而Tailwind CSS是一种非常流行的基础样式框架,强调自定义和灵活性。它通过预设的实用类让你能够直接对元素添加样式,比如间距、边框、颜色等,避免了传统的CSS编写方式,使得设计团队可以更高效地创建统一的UI风格。 Tailwind CSS的核心理念是让设计师和开发者拥有完全定制化的自由度的同时,又保持一致性和响应式。 将UMI.js与Tailwind CSS结合使用,可以在构建企业级应用时享受到以下几个优势: 1. **高效开发**:利用UMI.js快速启动项目并集成Tailwind CSS,可以迅速开始开发,减少基础配置的时间成本。 2. **样式一致性**:UMI.js允许你使用全局命名空间,确保在整个项目中所有组件都遵循相同的命名规则,这与Tailwind CSS的命名策略完美契合,有助于维护良好的代码结构和视觉一致性。 3. **高性能**:UMI.js内置了性能优化措施,例如HMR(Hot Module Replacement)、代码分割等,搭配Tailwind CSS的按需加载机制,可以有效提升页面渲染速度和用户体验。 4. **易维护性**:由于UMI.js和Tailwind CSS的设计都是为了易于维护和扩展,因此组合使用这两个技术可以让项目随着时间的推移变得更加稳定和易于管理。 5. **定制化选项**:虽然Tailwind CSS提供了大量预设类供选择,但如果需要更特殊的样式需求,UMI.js作为强大的项目管理工具,可以轻松扩展项目架构,适应特定的业务需求或设计规范。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值