1-07 React配置postcss-px-to-viewport

React配置postcss-px-to-viewport

移动端适配

  1. 安装依赖:在项目根目录下运行以下命令安装所需的依赖包:
sh 复制代码
npm install postcss-px-to-viewport --save-dev
  1. 配置代码
js 复制代码
const path = require('path');

module.exports = {
	webpack: {
		alias: {
			'@': path.resolve(__dirname, 'src'),
		},
	},

	style: {
		postcss: {
			mode: 'exclude',
			loaderOptions: {
				postcssOptions: {
					ident: 'postcss',
					plugins: [
						[
							'postcss-px-to-viewport',
							{
								unitToConvert: 'px', // 要转化的单位
								viewportWidth: 375, // UI设计稿的宽度
								viewportUnit: 'vw', // 指定需要转换成的视窗单位,建议使用 rem
								fontViewportUnit: 'vw', // 字体使用的视口单位
								unitPrecision: 13, // 指定`px`转换为视窗单位值的小数后 x位数
								// propList: 当有些属性的单位我们不希望转换的时候,可以添加在数组后面,并在前面加上!号,如propList: ["*","!letter-spacing"],这表示:所有css属性的属性的单位都进行转化,除了letter-spacing的
								propList: ['*'], // 指定转换的css属性的单位,*代表全部css属性的单位都进行转换
								// 转换的黑名单,在黑名单里面的我们可以写入字符串,只要类名包含有这个字符串,就不会被匹配。比如selectorBlackList: ['wrap'],它表示形如wrap,my-wrap,wrapper这样的类名的单位,都不会被转换
								selectorBlackList: ['ignore'], // 指定不转换为视窗单位的类名,
								minPixelValue: 1, // 默认值1,小于或等于1px则不进行转换
								mediaQuery: true, // 是否在媒体查询的css代码中也进行转换,默认false
								replace: true, // 是否转换后直接更换属性值
								exclude: [/node_modules/], // 设置忽略文件,用正则做目录名匹配
								landscape: false, // 是否处理横屏情况
							},
						],
					],
				},
			},
		},
	},
};
  1. 重新启动开发服务器:如果你的开发服务器正在运行,请重新启动它以应用新的配置。

之后当我们写px时会自动转换成vm单位

相关推荐
OPEN-F2 小时前
C++进阶教程:继承与多态
开发语言·c++
泯泷3 小时前
手搓JSVMM第 8 篇:函数调用:参数、返回值与调用帧
前端·javascript·前端框架
Sherotree4 小时前
Google Antigravity——Agent 被提到主界面
前端·ide·后端·edge浏览器
Mr数据杨4 小时前
【Codex】用学生入学评估模块建立新生能力画像
android·java·javascript·django·codex·项目开发
luj_17684 小时前
大律师考核应重能力与科技素养
c语言·开发语言·c++·经验分享·算法
里欧跑得慢4 小时前
Flutter 像素级还原:设计稿到代码的视觉无损转换技巧
前端·css·flutter·web
里欧跑得慢4 小时前
Flutter 三方库 function_tree — 鸿蒙应用开发中的动态数学公式解析与计算神器,实现鸿蒙深度适配下的复杂函数逻辑运行时求值实战(适配鸿蒙 HarmonyOS Next ohos)
android·前端·安全·flutter·华为·harmonyos
苏灿烤鱼5 小时前
没有机密文件,也没有付费数据,在浏览器里造一颗"间谍卫星"
前端·javascript·github
leonkay5 小时前
C# 特性(Attribute)——【1】基础讲解
开发语言·青少年编程·面试·c#·.net·个人开发
harmful_sheep5 小时前
java group by常见用法
java·开发语言·python