打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
React antd less框架搭建步骤,看吧,整的明白儿的

1、node版本

  首先你要先看下你的node版本,如果小于10,建议升级到10及以上,因为低版本的 node 在自动创建 react框架时,有配置文件跟10及以上的有比较大的差异,而且需要增加、修改的配置有点多,有些繁复,所以为了能够轻松自在的创建基础框架,最好是升级下node。我用的nvm,版本随意切换,所以还算自在。

2、先跑命令 : npm install -g create-react-app 创建下 构建环境。

3、create-react-app  <你定义的项目名> ,运行后就会自动创建了。

4、完成后 你的 项目目录结构及package.json配置大概如下:

很整洁,很多配置项集成在了 node_moudles下的 react-scripts 中,如果你想自己加一些自己的配置,或者定制下配置。那就需要 执行命令 : npm run eject(这词是弹出的意思)。

5、执行 npm run eject 时,它将把所有配置文件和可传递的依赖项(Webpack、Babel、eSlint等)直接复制到您的项目中,配置文件会被输出到config下的webpack.config.js,你可以对其进行修改调整。

如果你用过vue-cli3去创建并配置vue项目的话,看到react下的 这个 webpack.config.js文件应该会觉得似曾相识,除了有一些优化配置项vue没有,一部分内容 和 vue.config.js文件 还是有诸多想通之处的,

玩起来也会得心应手一些。

此时你的目录结构如下:

6、这时候引用antd开发时,可能会报错,还需要做一些配置。

const lessRegex = /\.less$/;const lessModuleRegex = /\.module\.less$/;
loaders.push(        {          loader: require.resolve('resolve-url-loader'),          options: {            sourceMap: isEnvProduction && shouldUseSourceMap,          },        },        {          loader: require.resolve(preProcessor),          options: {            sourceMap: true,            javascriptEnabled: preProcessor === 'less-loader'    //需要加          },        }
plugins: [                  [                    require.resolve('babel-plugin-named-asset-import'),                    {                      loaderMap: {                        svg: {                          ReactComponent:                            '@svgr/webpack?-svgo, titleProp, ref![path]',                        },                      },                    },                  ],                  //下面需要加                  [                      "import",                       {                         libraryName: "antd",                         libraryDirectory: "es",                         style: true // `style: true` 会加载 less 文件                        },                  ]                ],
              // less相关配置 ,下面都需要加              //普通模式              {                  test: lessRegex,                  exclude: lessModuleRegex,                  use: getStyleLoaders(                      {                          importLoaders: 2,                          sourceMap: isEnvProduction                              ? shouldUseSourceMap                              : isEnvDevelopment,                      },                      'less-loader'                  ),                  sideEffects: true,              },              //module 模式              {                  test: lessModuleRegex,                  // exclude:[/node_modules/],// 针对第三方的less文件不进行module化                  use: getStyleLoaders(                      {                          importLoaders: 2,                          sourceMap: isEnvProduction                              ? shouldUseSourceMap                              : isEnvDevelopment,                          modules: true,                          getLocalIdent: getCSSModuleLocalIdent,                      },                      'less-loader'                  ),              },            // "file" loader makes sure those assets get served by WebpackDevServer.            

配的时候,看清配置所在位置哈。这样就结束了,可以玩耍了。


来源:https://www.icode9.com/content-4-396101.html
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
搭建Typescript+React项目模板(3)
React+electron项目搭建 打包
Vite 的兼容性可以通过官方的插件 @vitejs/plugin-legacy 解决我们从 UmiJS 迁移到了 Vite
webpack.config.js和package.json
.net core + vue开发单页应用(一)
Less相关的用法以及Vue2.0 中如何使用Less
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服