uniapp+vite+cli模板引入tailwindcss

目前vite+cli方式用的都是官方提供的模板,vite版本还是4.14版本,较旧,而tailwindcss已经有了4版本,实际发现引入最新版会报错,因而继续使用3.3.5版本

复制代码
pnpm install tailwindcss@3.3.5 @uni-helper/vite-plugin-uni-tailwind -D

@uni-helper/vite-plugin-uni-tailwind是让小程序也支持tailwindcss的插件

tailwind.config.ts

复制代码
module.exports = {
  content: ['index.html', './src/**/*.{html,js,ts,vue}'],
  theme: {
    extend: {},
  },
  plugins: [],
}

postcss.config.ts

复制代码
module.exports = {
  plugins: {
    tailwindcss: {},
    autoprefixer: {},
  },
}

vite.config.ts

复制代码
import tailwindcss from 'tailwindcss'
import uniTailwind from '@uni-helper/vite-plugin-uni-tailwind'  


    plugins: [uniTailwind()],
    css: {
      postcss: {
        plugins: [...cssPlugins, tailwindcss],
        ignore: [
          'node_modules/**', // 忽略 node_modules 目录下的所有文件
        ],
      },
    },

tailwind.css

@import 'tailwindcss/base';

@import 'tailwindcss/components';

@import 'tailwindcss/utilities';

main.ts

import '@/static/css/tailwind.css'

某.vue文件中测试

<view class="title-box pt-1">{{ $t('活跃交易者的新黎明') }}</view>

起作用了,但是px-1, 默认的单位是rem,现在我需要改成和当前项目一样,非小程序单位是vw,小程序是rpx

tailwind.config.ts

复制代码
module.exports = {
  content: ['index.html', './src/**/*.{html,js,ts,vue}'],
  theme: {
    extend: {},
    spacing: {
      // 影响:padding、margin、width、height
      0: '0px',
      1: '10px',
      2: '20px',
      3: '30px',
      4: '40px',
      5: '50px',
      6: '60px',
      7: '70px',
      8: '80px',
      9: '90px',
      10: '10px',
    },
  },
  plugins: [],
}

目前还有点问题,就是例如text-[10px]没有被postcss插件转换成vw

解决:tailwind插件要作为postcss第一个插件才行,之前放反了位置

复制代码
plugins: [uniTailwind()],
    css: {
      postcss: {
        plugins: [tailwindcss, ...cssPlugins],
        ignore: [
          'node_modules/**', // 忽略 node_modules 目录下的所有文件
        ],
      },
    },

综上,问题全部解决,可满足基本行内样式开发需要

相关推荐
盗德13 小时前
为什么要用Monorepo管理前端项目?(详解)
前端·架构·代码规范
五号厂房13 小时前
ProTable 大数据渲染优化:实现高性能表格编辑
前端
右子13 小时前
理解响应式设计—理念、实践与常见误解
前端·后端·响应式设计
KaiSonng13 小时前
【前端利器】这款轻量级图片标注库让你的Web应用瞬间提升交互体验
前端
二十雨辰13 小时前
vite性能优化
前端·vue.js
明月与玄武13 小时前
浅谈 富文本编辑器
前端·javascript·vue.js
paodan13 小时前
如何使用ORM 工具,Prisma
前端
布列瑟农的星空14 小时前
重学React——memo能防止Context的额外渲染吗
前端
FuckPatience14 小时前
Vue 与.Net Core WebApi交互时路由初探
前端·javascript·vue.js
小小前端_我自坚强14 小时前
前端踩坑指南 - 避免这些常见陷阱
前端·程序员·代码规范