【随手记】uniapp + V3 使用TailwindCss3

目录


weapp-tailwindcss文档链接


一、CLI创建uniapp

bash 复制代码
npx degit dcloudio/uni-preset-vue#vite-ts my-vue3-project
npm install
npm run dev:h5

二、 安装TailwindCss3

bash 复制代码
npm install tailwindcss@3 postcss autoprefixer -D

三、初始化

  • 初始化TailwindCss、postcss,生成tailwind.config.jspostcss.config.js
bash 复制代码
npx tailwindcss init -p

tailwind.config.js

javascript 复制代码
/** @type {import('tailwindcss').Config} */
module.exports = {
  // 配置需要扫描的文件类型--即src下的所有vue、js、ts文件
  content: ['./public/index.html', './src/**/*.{html,js,ts,vue}'],
  // 自定义拓展配置
  theme: {
    // 覆盖默认配置
    colors: {
      'blue': '#3c9cff',
      'purple': '#7e5bef',
      'pink': '#ff49db',
      'orange': '#ff7849',
      'green': '#41B883',
      'yellow': '#ffc82c',
      'gray-dark': '#273444',
      'gray': '#8492a6',
      'gray-light': '#d3dce6',
    },
    // 新增额外配置
    extend: {
      // 扩展颜色
      colors: {
        'purple-pink': '#8135f5',
        'blue-light': '#9acafc'
      },
    },
  },
  // 配置插件
  plugins: [
    // 示例:自定义按钮样式:btn-primary <button class="btn-primary">点击我</button>
    function({ addComponents }) {
      addComponents({
        '.btn-primary': {
          '@apply bg-blue text-[#fff] font-bold rounded': '',
          '&:hover': {
            '@apply bg-blue-light' : '',
          }
        }
      })
    },
  ],
  // ...
  corePlugins: {
    // 小程序不需要 preflight,因为这主要是给 h5 的,如果你要同时开发小程序和 h5 端,你应该使用环境变量来控制它
    preflight: false
  }
}

postcss.config.js

javascript 复制代码
export default {
  plugins: {
    tailwindcss: {},
    autoprefixer: {},
  },
}

四、引用TailwindCss

uniappApp.vue文件:

css 复制代码
<style>
  @tailwind base;
  @tailwind components;
  @tailwind utilities;
</style>

五、安装weapp-tailwindcss

bash 复制代码
npm install weapp-tailwindcss -D

注意:如果tailwindcssweapp-tailwindcss 之后安装,可以手动执行一下 patch 方法,npx weapp-tw patch

package.json文件:

javascript 复制代码
"scripts": {
	// 用于rpx单位支持和上下文通信
   "postinstall": "weapp-tw patch"
 }

六、注册插件

vite.config.ts文件:

typescript 复制代码
import { defineConfig } from "vite";
import uni from "@dcloudio/vite-plugin-uni";
import { UnifiedViteWeappTailwindcssPlugin as uvwt } from 'weapp-tailwindcss/vite';

export default defineConfig({
  // uni 是 uni-app 官方插件, uvtw 一定要放在 uni 后,对生成文件进行处理
  plugins: [uni(),uvwt()],
  css: {
    postcss: {
      plugins: [
        // require('tailwindcss')() 和 require('tailwindcss') 等价的,表示什么参数都不传,如果你想传入参数
        // require('tailwindcss')({} <- 这个是postcss插件参数)
        require('tailwindcss'),
        require('autoprefixer')
      ],
    },
  },
});

七、使用TailwindCss

javascript 复制代码
<template>
  <view class="flex flex-col items-center justify-center h-screen">
    <image alt="Vue logo" src="@/static/logo.png" class="w-[200rpx] h-[200rpx]" />
    <view class="font-[600] text-[40rpx] my-3 flex items-center flex-wrap justify-center">
      <text class="text-green">vue 3</text>+ 
      <text class="text-blue">vite</text>+ 
      <text class="text-orange">typescript</text> +
      <text class="text-purple-pink">tailwindcss4</text>
    </view>
    <button class="btn-primary">点击我</button>
  </view>
</template>

相关推荐
Jacky-00818 小时前
Vue3+elementPlus+Vite项目
vue
VelinX1 天前
【个人学习||vue】vue
vue
苏瞳儿1 天前
前端/后端-配置跨域
前端·javascript·node.js·vue
探索宇宙真理.1 天前
Vite 任意文件读取漏洞 | CVE-2026-39363复现&研究
经验分享·开源·vite·安全漏洞
软希网分享源码1 天前
中英双语言量化交易投资源码/跟单搬砖区块链交易所源码/前端uniapp纯源码+后端
前端·uni-app·区块链·中英双语言量化交易投资源码
小成Coder1 天前
UniApp 如何调用鸿蒙预加载
uni-app·harmonyos·鸿蒙
曲幽1 天前
告别手写 API 胶水代码:FastAPI 与 Vue 的“契约自动机” OpenAPI 实战
python·typescript·vue·fastapi·web·swagger·openapi·codegen
桂森滨2 天前
Vue3+Pinia+Vite+TS 还原高性能外卖APP项目 4️⃣首页开发
前端·typescript·vue
anyup2 天前
uView Pro 的主题系统有多强大?3 分钟设计 uni-app 企业级 UI 主题
前端·vue.js·uni-app