關(guān)于配置babel-plugin-import報錯的坑及解決
配置babel-plugin-import報錯的坑
用的是antd design vue生成的項目,按著官網(wǎng)的提示一步一步下來,在配置babel-plugin-import時候發(fā)生了報錯,一直找了很久沒有解決問題
問題
項目可以正常運行,當(dāng)配置babel-plugin-import時的問題
引入可以正常運行
import Button from “ant-design-vue/lib/button”; import “ant-design-vue/dist/antd.css”;
改成 import { Button } from ‘ant-design-vue’ 時就報錯了,所以肯定是配置的問題
報錯內(nèi)容
./node_modules/antd/lib/button/style/index.less (./node_modules/css-loader??ref–6-oneOf-3-1!./node_modules/postcss-loader/src??postcss!./node_modules/less-loader/dist/cjs.js!./node_modules/antd/lib/button/style/index.less)
// https://github.com/ant-design/ant-motion/issues/44
.bezierEasingMixin();
一直以為是less和less-loader的問題,反反復(fù)復(fù)弄了好久沒有辦法。
后來發(fā)現(xiàn)是配置的問題,被官網(wǎng)坑了

因為用的是vue3.x,所以用了下面的配置方案,style設(shè)置為true,所以就發(fā)生了報錯
錯誤原因
style設(shè)置為true就會報錯
解決方案
style設(shè)置為“css”
所以我把style設(shè)置了上面的css,然后就好了,真的太相信官網(wǎng)的了以為都是沒有錯的,沒想到坑了我8個小時。
babel-plugin-import配置babel按需引入antd模塊報錯.bezierEasingMixin()
安裝yarn add babel-plugin-import
實現(xiàn)按需加載組件代碼和樣式的babel插件
下載babel-plugin-import插件,然后在webpack.config.dev.js中的plugins添加配置
{
test: /\.(js|mjs|jsx|ts|tsx)$/,
include: paths.appSrc,
loader: require.resolve('babel-loader'),
options: {
customize: require.resolve(
'babel-preset-react-app/webpack-overrides'
),
plugins: [
[
require.resolve('babel-plugin-named-asset-import'),
{
loaderMap: {
svg: {
ReactComponent: '@svgr/webpack?-prettier,-svgo![path]',
},
},
},
],
['import',{libraryName:'antd',style:true}],
],
// This is a feature of `babel-loader` for webpack (not Babel itself).
// It enables caching results in ./node_modules/.cache/babel-loader/
// directory for faster rebuilds.
cacheDirectory: true,
// Don't waste time on Gzipping the cache
cacheCompression: false,
},
},重啟項目后報錯:

打開項目package.json發(fā)現(xiàn)less版本是^3.0.4
解決方案
將less版本降到3.0以下 比如安裝 2.7.3版本。
兩種方式:
1.yarn add less@^2.7.3
2.打開項目的package.json 找到dependencies下面的less 將其版本改為 "2.7.3" 然后 yarn install
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
詳解如何使用 vue-cli 開發(fā)多頁應(yīng)用
本篇文章主要介紹了詳解如何使用 vue-cli 開發(fā)多頁應(yīng)用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-12-12
解決項目vite1.0升級到2.0打包遇到Some chunks are larger問題
本文主要介紹了解決項目vite1.0升級到2.0打包遇到Some chunks are larger問題,文中根據(jù)實例編碼詳細介紹的十分詳盡,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-03-03
Vue包大小優(yōu)化的實現(xiàn)(從1.72M到94K)
這篇文章主要介紹了Vue包大小優(yōu)化的實現(xiàn)(從1.72M到94K),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02
Vue reactive函數(shù)實現(xiàn)流程詳解
一個基本類型的數(shù)據(jù),想要變成響應(yīng)式數(shù)據(jù),那么需要通過ref函數(shù)包裹,而如果是一個對象的話,那么需要使用reactive函數(shù),這篇文章主要介紹了Vue reactive函數(shù)2023-01-01

