您好,登錄后才能下訂單哦!
本篇內容介紹了“Vue3+Element-plus項目自動導入報錯怎么解決”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
在創建 Vue3 + Element-plus 項目時,根據 Element-plus 文檔,采用自動導入,安裝 unplugin-vue-components 和 unplugin-auto-import 兩款插件,但在按要求配置后運行項目,npm 報錯
ERROR SyntaxError: Unexpected token '?'
...\node_modules\unimport\dist\chunks\vue-template.cjs:55
const name = i.as ?? i.name;
網上查找發現當前(20220601)并無相關解決方案,經排查發現錯誤是由 unplugin-auto-import 插件的依賴 unimport 包引發,查看解決方法可直接跳轉至“解決方案”
npm install -D unplugin-vue-components npm install -D unplugin-auto-import
兩個插件使用一條命令一起安裝可能出錯
const { defineConfig } = require('@vue/cli-service') const AutoImport = require('unplugin-auto-import/webpack') const Components = require('unplugin-vue-components/webpack') const { ElementPlusResolver } = require('unplugin-vue-components/resolvers') module.exports = defineConfig({ configureWebpack: { plugins: [ AutoImport({ resolvers: [ElementPlusResolver()], }), Components({ resolvers: [ElementPlusResolver()], }), ], }, )}
以下問題解決其一即可:
查找 unplugin-auto-import 插件的依賴 unimport 包,node_modules\unimport\dist\chunks\vue-template.cjs:55 位置的語句報錯:
const name = i.as ?? i.name;
筆者出現此問題時,node.js 版本為 v12.18.0,npm 版本為 6.14.5
降低 unplugin-auto-import 插件版本或升級 node.js 和 npm 版本,選擇其一即可:
更換 unplugin-auto-import 插件版本,經驗證,安裝 unplugin-auto-import@0.72 及以前版本可規避此問題
npm install -D unplugin-auto-import@0.7.2
將 node.js 版本升級至長期維護版,20220601時為 v16.15.0,升級方法:從 node.js官網 下載長期維護版,安裝位置選擇與當前 node.js 位置相同即可
將 npm 版本升級為與 node.js 版本匹配的推薦版本,20220601時為 8.10.0,升級方法:
npm install -g npm@8.10.0
自動按需導入官網教程
首先:npm install -D unplugin-vue-components unplugin-auto-import
然后配置webpack.config.js
const AutoImport = require('unplugin-auto-import/webpack') const Components = require('unplugin-vue-components/webpack') const { ElementPlusResolver } = require('unplugin-vue-components/resolvers') module.exports = { // ... plugins: [ AutoImport({ resolvers: [ElementPlusResolver()], }), Components({ resolvers: [ElementPlusResolver()], }), ], }
也可以直接配置babel.config.js,但是如果安裝版本過高可能在配置時會報錯,所以安裝指定版本
npm i element-plus@1.0.2-beta.28 1 module.exports = { plugins: [ [ 'import', { libraryName: 'element-plus', customStyleName: (name) => { return `element-plus/lib/theme-chalk/${name}.css` } } ] ], }
按照官網自動按需導入element-plus出現以下問題:樣式不生效
將安裝版本更換為npm i element-plus@1.0.2-beta.28
“Vue3+Element-plus項目自動導入報錯怎么解決”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。