HBuilderX创建uniapp项目使用 tailwindcss

文章目录

一、创建package.json文件

js 复制代码
{
  "devDependencies": {
    "autoprefixer": "9",
    "postcss": "7",
    "postcss-rem-to-responsive-pixel": "^5.1.3",
    "tailwindcss": "npm:@tailwindcss/postcss7-compat",
    "weapp-tailwindcss-webpack-plugin": "^1.6.8",
    "webpack": "npm:webpack@webpack-4"
  }
}

二、打开终端 yarn / npm 安装依赖

三、创建 vue.config.js文件

js 复制代码
// 为了 tailwindcss jit 开发时的热更新
if (process.env.NODE_ENV === "development") {
  process.env.TAILWIND_MODE = "watch";
}

const {
  UniAppWeappTailwindcssWebpackPluginV4,
} = require("weapp-tailwindcss-webpack-plugin");

/**
 * @type {import('@vue/cli-service').ProjectOptions}
 */
const config = {
  //....
  configureWebpack: {
    plugins: [new UniAppWeappTailwindcssWebpackPluginV4()],
  },
  //....
};

module.exports = config;

四、创建postcss.config.js文件

js 复制代码
const path = require("path");

module.exports = {
  plugins: [
    require("autoprefixer")({
      remove: process.env.UNI_PLATFORM !== "h5",
    }),
    require("tailwindcss")({
      config: path.resolve(__dirname, "./tailwind.config.js"),
    }),
    // rem 转 rpx
    require("postcss-rem-to-responsive-pixel/postcss7")({
      rootValue: 32,
      propList: ["*"],
      transformUnit: "rpx",
    }),
  ],
};

五、创建tailwind.config.js文件

js 复制代码
const path = require("path");
const resolve = (p) => {
	return path.resolve(__dirname, p);
};

/** @type {import('@types/tailwindcss/tailwind-config').TailwindConfig} */
module.exports = {
	mode: "jit",
	purge: {
		content: [
			resolve("./index.html"),
			resolve("./pages/**/*.{vue,js,ts,jsx,tsx,wxml}"),
		],
	},
	darkMode: false, // or 'media' or 'class'
	theme: {
		colors: {
			white: '#ffffff',
			black: '#000000',
			main: '#333333',
			content: '#666666',
			muted: '#999999',
			light: '#e5e5e5',
			primary: {
				DEFAULT: '#4173ff'
			},
			success: '#5ac725',
			warning: '#f9ae3d',
			error: '#f56c6c',
			info: '#909399',
			page: '#f6f6f6'
		},
		fontSize: {
			xs: '24rpx',
			sm: '26rpx',
			base: '28rpx',
			lg: '30rpx',
			xl: '32rpx',
			'2xl': '34rpx',
			'3xl': '38rpx',
			'4xl': '40rpx',
			'5xl': '44rpx'
		}
	},
	variants: {},
	plugins: [],
	corePlugins: {
		preflight: false,
	},
};
//自定义配置

六、App.vue文件的style中引入tailwindcss

js 复制代码
<style>
	/*每个页面公共css */
	@import "tailwindcss/base";
	@import "tailwindcss/utilities";
</style>

相关推荐
00后程序员张3 小时前
iOS 上架费用全解析 开发者账号、App 审核、工具使用与开心上架(Appuploader)免 Mac 成本优化指南
android·macos·ios·小程序·uni-app·cocoa·iphone
前端与小赵10 小时前
uni-app开发安卓app时控制屏幕常亮不息屏
android·gitee·uni-app
2501_9160088912 小时前
HTTPS 请求抓包,从原理到落地排查的工程化指南(Charles / tcpdump / Wireshark / Sniffmaster)
ios·小程序·https·uni-app·wireshark·iphone·tcpdump
xiaohe060112 小时前
🥳 Uni ECharts 2.1 发布:正式支持鸿蒙,零成本迁移、全平台兼容、跨端开发零负担!
vue.js·uni-app·echarts
2501_915909061 天前
WebView 调试工具全解析,解决“看不见的移动端问题”
android·ios·小程序·https·uni-app·iphone·webview
2501_915106321 天前
App 怎么上架 iOS?从准备资料到开心上架(Appuploader)免 Mac 上传的完整实战流程指南
android·macos·ios·小程序·uni-app·iphone·webview
行走的陀螺仪1 天前
uni-app + Vue3 实现折叠文本(超出省略 + 展开收起)
前端·javascript·css·uni-app·vue3
小禾青青1 天前
uniapp安卓打包遇到报错:Uncaught SyntaxError: Invalid regular expression: /[\p{L}\p{N}]/
android·uni-app
环信即时通讯云1 天前
实现小程序 uniApp 输入框展示自定义表情包
小程序·uni-app
2501_915921431 天前
iOS 抓不到包怎么办?工程化排查与替代抓包方案(抓包/HTTPS/Charles代理/tcpdump)
android·ios·小程序·https·uni-app·iphone·tcpdump