1.创建项目
2.引入ant mobile
npm install antd-mobile --save
3.修改public下的index.html
<!DOCTYPE html> <html> <head> <!-- set `maximum-scale` for some compatibility issues --> // <meta name="viewport" content="width=device-width, initial-scale=1" /> pc端 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no" /> // 移动端 // 处理点击延迟问题 <script src="https://as.alipayobjects.com/g/component/fastclick/1.0.6/fastclick.js"></script> <script> if ('addEventListener' in document) { document.addEventListener('DOMContentLoaded', function() { FastClick.attach(document.body); }, false); } if(!window.Promise) { document.writeln('<script src="https://as.alipayobjects.com/g/component/es6-promise/3.2.2/es6-promise.min.js"'+'>'+'<'+'/'+'script>'); } </script> </head> <body> <div id="root"></div> </body> </html>
4. 使用 babel-plugin-import 进行按需加载
5. 使用第三方插件库 修改react脚手架
1. 安装:npm i react-app-rewired customize-cra --save-dev 2. 在根目录下新建文件config-overrides.js文件 3. 安装less和less-loader:npm i less less-loader --save-dev // ant mobbile css是用less 写的, 修改自定义主题 使用less 进行修改 注意less-loader的版本 高版本会报错 5. 配置 主题颜色等 //config-overrides.js文件 const { override, // ... addLessLoader, fixBabelImports // ... } = require('customize-cra') module.exports = override( // ... // less addLessLoader({ // 现在的写法 lessOptions: { javascriptEnabled: true, modifyVars: { '@brand-primary': '#1DA57A', // 修改主题颜色 '@brand-primary-tap': '#1DA57A' // 修改按压下的颜色 } } }), // antd-mobile按需加载 - babel-plugin-import fixBabelImports('import', { libraryName: 'antd-mobile', libraryDirectory: 'es', // style: 'css' 之前写法 style: true }) ) 5. 修改 package.json下的文件 // react-scripts 改为 react-app-rewired "scripts": { "start": "react-app-rewired start", "build": "react-app-rewired build", "test": "react-app-rewired test", "eject": "react-scripts eject" }, 6. 重启项目即可