<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          項目中Antd3與Antd4共存

          共 1676字,需瀏覽 4分鐘

           ·

          2022-03-01 13:31

          本文適合使用Antd Design開發(fā)項目的小伙伴閱讀。

          歡迎關(guān)注前端早茶,與廣東靚仔攜手共同進階~

          作者:廣東靚仔

          一、背景

          ? ? 某天夜里,有位靚仔找到了廣東靚仔,"悄悄的"問了個技術(shù)問題:antd 3版本和4版本如何共存?
          ???沒過多久,這位靚仔找到的解決方案~

          ? ??
          ? ? 廣東靚仔回憶起之前有位同事之前也遇到這個問題,后來同事選擇了重構(gòu)。重構(gòu)確實是最穩(wěn)的方案,保證項目穩(wěn)健性的同時又避開了很多未知的坑。但是重構(gòu)要花費更多的時間精力成本,因此還是要因項目組而異啦。
          ? ??舊項目想使用antd新版本組件的API,但又不想重構(gòu),相信也有不少小伙伴有過這想法。
          ? ? 下面我們來具體展開講講

          二、具體的解決方案

          1. 安裝? ?

          ? ? 安裝antd4版本的時候設(shè)置下別名,具體代碼如下:
          npm?install?antd-v4@npm:[email protected]
          ? ??然后在package.json可以看到如下的依賴:

          ? ??

          2.配置less-loader

          webpack配置less-loader
          test:?/\.less$/,
          include:?[/node_modules[\\|\/]antd-v4/],
          use:?[
          ??{
          ????"cache-loader",
          ????"style-loader",
          ??}
          ??{
          ????loader:?"css-loader",
          ????options:?{
          ????????importLoaders:?1
          ????}
          ??},
          ??{
          ????loader:?"less-loader",
          ????options:?{
          ??????javascriptEnabled:?true,
          ??????modifyVars:?{
          ????????"@ant-prefix":?"ant-v4",
          ????????"@primary-color":?"rgba(224,?61,?62,?1)",?//?全局主色
          ????????"@link-color":?"rgba(224,?61,?62,?1)"
          ??????}
          ????}
          ??}
          ]

          3.設(shè)置prefixCls

          ConfigProvider設(shè)置prefixCls
          <ConfigProvider?locale={zhCN}?prefixCls="ant-v4">

          4.設(shè)置語言地址

          import?locale?from?'antd-v4/lib/locale/zh_CN'
          ? 然后就可以在antd3的老項目里面使用antd4了~
          ? 下面我們來梳理下這個less-loader的配置,有興趣可以繼續(xù)閱讀。

          三、webpack配置less-loader說明

          ? ??在上面我們添加了打包LESS的規(guī)則,我們來梳理下less-loader的配置:
          include: [/node_modules[\\|\/]antd-v4/],
          這里是指定node_modules路徑下的antd-v4文件需要經(jīng)過 loader 處理
          use
          從上到下使用了cache-loaderstyle-loader、?css-loaderless-loader
          ?cache-loader在一些性能開銷較大的 loader 之前添加此 loader,以將結(jié)果緩存到磁盤里
          style-loader將打包后的css代碼
          <del id="afajh"><form id="afajh"></form></del>
              1. <th id="afajh"><progress id="afajh"></progress></th>
                <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  日韩无码电影一区 | 国产一级无码 | 九色网站91 | 久久久久久久久久久本色 | 翔田千里无码流出两部 |