您好,登錄后才能下訂單哦!
這篇文章主要介紹“Vue3中怎么引入Ant Design”,在日常操作中,相信很多人在Vue3中怎么引入Ant Design問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Vue3中怎么引入Ant Design”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
首先介紹一下 vue-cli 3 默認生成的目錄結構
+ demo + node_modules(存放第三方模塊) + public(存放靜態文件) - favicon.ico(圖標) - index.html (頁面模板) + src(我們自己寫的文件一般放在這個文件夾下) + assets(存放資源文件) + components(存放公共組件) + router.js(路由管理:Router) + store.js (狀態管理:Vuex) + views(存放視圖組件) - App.vue(頁面入口文件) - main.js(程序入口文件) - package.json(項目配置文件) - package-lock.json(項目配置文件) - babel.config.js(babel 配置文件) - README.md(項目說明文檔) - ...(其它配置文件)
npm 是 Node 的包管理工具,我們可以通過 npm 安裝 Ant Design
加上 --save 選項,可以同時將配置寫入 package.json 的 dependencies 字段(生產環境依賴)
npm install --save ant-design-vue
在 Vue 中引入 Ant Design 有兩種方式,分別是全部引入和局部引入,下面將會逐一介紹
(1)全部引入
在 main.js 中引入并注冊全部組件,即可在其它頁面中直接使用全部組件
// main.js import Vue from 'vue' import App from './App.vue' import router from './router' import store from './store' // 新增代碼:引入全部組件及樣式 import Antd from 'ant-design-vue' import 'ant-design-vue/dist/antd.css' // 新增代碼:注冊全部組件 Vue.use(Antd) new Vue({ router, store, render: h => h(App) }).$mount('#app')
采用這種引入方式,不管是否使用到的組件,都會全部加載進來,顯然不是一個好的辦法
(2)局部引入
在 main.js 中引入并注冊特定組件,在其它頁面中只可使用特定組件
// main.js import Vue from 'vue' import App from './App.vue' import router from './router' import store from './store' // 新增代碼:引入特定組件及樣式 import { Button } from 'ant-design-vue' import 'ant-design-vue/lib/button/style' // 新增代碼:注冊特定組件 Vue.component(Button.name, Button) new Vue({ router, store, render: h => h(App) }).$mount('#app')
采用這種引入方式,可以保證只引入需要的組件(按需引入)
但每引入一個組件,都要手動將其對應的樣式文件同時引入,未免過于麻煩
babel-plugin-import 插件可以輔助完成這個工作,首先安裝 babel-plugin-import 插件
加上 --save-dev 選項,同時將配置寫入 package.json 的 devDependencies 字段(開發環境依賴)
npm install --save-dev babel-plugin-import
然后在 babel.config.js 配置插件
module.exports = { presets: [ '@vue/cli-plugin-babel/preset' ], // 新增代碼 plugins: [ [ 'import', { libraryName: 'ant-design-vue', libraryDirectory: 'es', style: true } ] ] }
接著在 main.js 按需引入組件
// main.js
// main.js import Vue from 'vue' import App from './App.vue' import router from './router' import store from './store' // 新增代碼:引入特定組件 // 此時會自動引入對應的樣式文件,無需再手動逐一引入 import { Button } from 'ant-design-vue' // 新增代碼:注冊特定組件 Vue.component(Button.name, Button) new Vue({ router, store, render: h => h(App) }).$mount('#app')
最后記得使用 npm run serve 重啟應用,即可在其它頁面中使用特定組件
注意,如果你在使用 vue-cli 3 創建項目時配置了 Less,那么你在運行應用時可能會出現以下錯誤:
Inline JavaScript is not enabled. Is it set in your options?
這是因為 Webpack 對于 Less-loader 的默認配置不合適所導致的,所以我們需要修改一下配置
在根目錄下的項目配置文件 vue.config.js 中添加以下配置項(如果沒有這個文件,就自己創建一個)
module.exports = { css: { loaderOptions: { less: { javascriptEnabled: true } } } }
在安裝和引入 Ant Design 后,我們就可以在頁面使用 Ant Design 中的組件啦
<template> <div> <a-button type="primary" @click="handleClick">Primary</a-button> </div> </template> <script> export default { methods: { handleClick: function (e) { console.log('click', e) } } } </script>
這時,如果你能看到一個藍色的按鈕出現在頁面上,就說明已經配置成功
到此,關于“Vue3中怎么引入Ant Design”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。