React如何引入antd-mobile+postcss搭建移动端
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,本篇内容主要讲解"React如何引入antd-mobile+postcss搭建移动端",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"React如何引入ant
千家信息网最后更新 2025年02月01日React如何引入antd-mobile+postcss搭建移动端
本篇内容主要讲解"React如何引入antd-mobile+postcss搭建移动端",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"React如何引入antd-mobile+postcss搭建移动端"吧!
安装antd-mobile
全局引入
npm install antd-mobile --save
在App.js
引入css
import 'antd-mobile/dist/antd-mobile.css';
在jsx
使用antd组件
import React from 'react';import { Button } from 'antd-mobile';const index = () => { return ();}export default index;
按需引入
npm install babel-plugin-import -s
安装插件,覆盖webpack
配置
customize-cra配置api文档
npm install react-app-rewired customize-cra -s
package.json
进行更改命令方式
"scripts": { "start": "react-app-rewired start", "build": "react-app-rewired build", "test": "react-app-rewired test", "eject": "react-app-rewired eject" },
在根目录新建config-overrides.js
const { override, fixBabelImports } = require('customize-cra');module.exports = override( fixBabelImports('import', { libraryName: 'antd-mobile', style: 'css', }),);
在App.js
删除之前引入的css
校验是否按需引入
引入postcss px转rem
npm install lib-flexible postcss-px2rem-exclude --save
index.js
导入
import 'lib-flexible'
修改config-overrides.js
文件
const { override, fixBabelImports, addPostcssPlugins, addWebpackAlias} = require('customize-cra');const path = require("path");module.exports = override( fixBabelImports('import', { libraryName: 'antd-mobile', style: 'css', }), addPostcssPlugins( [require("postcss-px2rem-exclude") ( { remUnit: 75, //设计图大小 remPrecision: 2, //只转换到两位小数 exclude: /node_modules/i //插件不需要转rem } ) ] ), addWebpackAlias({ "@": path.resolve(__dirname, "src") }));
如果你需要使用less
/
自定义主题
npm install less less-loader -s
如果项目启动报错,是因为less-loader
版本过高,需要卸载,安装低版本
npm install less-loader@5.0.0 -s
坑! 需要注意顺序
const { override, fixBabelImports, addPostcssPlugins, addWebpackAlias, addLessLoader } = require('customize-cra');const path = require("path");module.exports = override( fixBabelImports('import', { libraryName: 'antd-mobile', style: true, //默认为'css' }), addLessLoader({ javascriptEnabled: true, modifyVars: { "@brand-primary": "#1DA57A" }, //自定义主题 }), addPostcssPlugins( [require("postcss-px2rem-exclude") ( { remUnit: 75, //设计图大小 remPrecision: 2, //只转换到两位小数 exclude: /node_modules/i //插件不需要转rem } ) ] ), addWebpackAlias({ "@": path.resolve(__dirname, "src") }));
补充:解决react项目引入antd-mobile导致postcss配置px转rem失效问题
今天使用了一下antd-mobile发现我之前配置的postcss失效了,防止下次踩坑记录一下解决方案
解决方案:在config-overrides.js文件里重写postcss,加入如下代码
npm下载以下模块
npm i react-app-rewire-postcss postcss-px2rem-exclude -S
const { override, fixBabelImports, addWebpackAlias, addDecoratorsLegacy,} = require("customize-cra");const path = require("path");const rewirePostcss = require("react-app-rewire-postcss");module.exports = override( // 配置按需加载 fixBabelImports("import", { libraryName: "antd-mobile", style: "css", }), // 配置文件别名 addWebpackAlias({ "@": path.resolve(__dirname, "src"), "@scss": path.resolve(__dirname, "src/assets/scss"), "@images": path.resolve(__dirname, "src/assets/images"), "@views": path.resolve(__dirname, "src/views"), "@network": path.resolve(__dirname, "src/network"), "@store": path.resolve(__dirname, "src/store"), "@components": path.resolve(__dirname, "src/components"), }), addDecoratorsLegacy(), (config, env) => { // 重写postcss rewirePostcss(config, { plugins: () => [ require("postcss-flexbugs-fixes"), require("postcss-preset-env")({ autoprefixer: { flexbox: "no-2009", }, stage: 3, }), require("postcss-px2rem-exclude")({ // 设计稿宽度/10 remUnit: 1080 / 10, exclude: /node-modules/i, }), ], }); return config; });
到此,相信大家对"React如何引入antd-mobile+postcss搭建移动端"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
配置
移动
插件
文件
设计
主题
内容
大小
小数
方案
版本
解决方案
设计图
项目
学习
实用
更深
代码
全局
兴趣
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技公司广告语6
两台服务器共享一个显示器
FTTH1分16网络技术
人口普查使用的数据库
有没有软件可以抓取数据库
未来有前景的数据库管理
安徽数据网络技术服务价格
网络安全和信息办是做什么的
关于网络安全征求意见的通知
网络安全给微信转账是什么
直播流媒体服务器
陕西鼎盛网络技术有限公司
建立扶贫项目数据库
怎么做动态网站的数据库
服务器文件共享是什么意思
广电网络技术主管自我评价
扬州网络营销软件开发哪个好
明日之后怎样找橡树岭的服务器
数据库的范式之间的包含关系
vbssql数据库怎么修改
中控软件开发要求
mysql数据库分数
网络安全生产先进个人材料
数据库数据模型设计
大专计算机网络技术学算法吗
现代大型数据库系B
网络安全的演讲稿200字
中国大型服务器操作系统
数据库支持大小写
网络安全教材书