当前位置: 首页 > news >正文

vite脚手架中安装和按需引入vuetify

最近想尝试以下vuetify,然后根据chatgpt的引导安装上了,但是谁知道呢,最后打包后的项目(里面什么都没写,只是一个vuetify测试页面)大小已经超过了5mb,然后我找了很多资料,最终学会了怎么按需导入。

 1.vuetify3安装

有些博主介绍用下面的指令直接创建vuetify项目:

pnpm create vuetify

 但是,我个人觉得没必要这样创建一个vuetify项目,因为它给我们生成的文件太多了,而且我作为一个vue3初学者,有些配置都看不懂,当然你可以尝试一下。

 下面在我们现有的vue3项目中安装vuetify

pnpm i vuetify

 2.按需导入组件

vuetify官网推荐了一种按需导入的方法,下面是链接:

https://vuetifyjs.com/en/features/treeshaking/#automatic-treeshaking

这个按需导入的插件叫vite-plugin-vuetify

安装方法:

pnpm i vite-plugin-vuetify -D

然后在vite.config.js中进行配置,非常简单:

 

import { fileURLToPath, URL } from 'node:url'import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vuetify from 'vite-plugin-vuetify' //vuetify按需导入// https://vite.dev/config/
export default defineConfig({plugins: [vue(),vuetify({ autoImport: true }) // 如果想按需引入,要写这行代码],resolve: {alias: {'@': fileURLToPath(new URL('./src', import.meta.url))}}
})

 3.在main.js中注册

在main.js中导入vuetiy并注册:

import 'vuetify/styles' //vuetify的css文件,这个一定要导入import { createApp } from 'vue'
import App from './App.vue'//导入vuetify
import { createVuetify } from 'vuetify' 
//因为不能直接app.use(createVuetify)这样写,所以用vuetify接受createVuetify(),再使用
const vuetify = createVuetify()    const  app = createApp(App)
app.use(vuetify)
app.mount('#app')

4.测试

最后我在官网上copy了一段网页布局代码:

<template><v-responsive class="border rounded" max-height="300"><v-app><v-navigation-drawer class="bg-black"><v-list><v-list-item title="Navigation drawer"></v-list-item></v-list></v-navigation-drawer><v-app-bar  elevation="2" title="App bar"></v-app-bar><v-main class="bg-orange h-100"><v-container><h1>Main Content</h1></v-container></v-main></v-app></v-responsive>
</template>

效果如下:

5.手动导入 

最后说一下手动导入,官方提供了手动导入的方法:

 

 或者直接在组件里面手动导入:

手动导入我没有尝试过,有兴趣的伙伴可以尝试一下! 


http://www.mrgr.cn/news/55019.html

相关文章:

  • Spring Boot配置文件不识别变量的解决方案
  • filebeat接入nginx和mysql获取日志
  • uoload-labs靶场Pass-09
  • Python 数据类型,是否可变、可哈希
  • 黑白帽子问题
  • 117. 填充每个节点的下一个右侧节点指针 II【 力扣(LeetCode) 】
  • 了解这些U盘数据恢复工具,不再担忧数据丢失
  • STM32应用详解(4)读写FLASH
  • 配置管理之Nacos
  • 025_Position_Layout_in_Matlab界面布局之设定位置
  • 【C++】C++语言知识总结浅析
  • 优质原创短视频素材下载网站推荐
  • Spring Boot 3.0 集成 knife4j 居然这么简单?你只需知道这几步!
  • 引爆品牌增长:数字营销的新策略与旧智慧
  • python+ffmpeg 屏幕录制程序
  • 集创赛比赛细则了解
  • 【数据结构与算法】之单链表反转
  • 【每日一题】24.10.14 - 24.10.20
  • 单链表的经典算法OJ
  • 华为杯”第十三届中国研究生数学建模竞赛-C题:基于无线通信基站的室内三维定位问题
  • SpringCloud
  • process.platform 作用
  • C#基于SkiaSharp实现印章管理(11)
  • 智简魔方业务管理系统v10 好用的IDC业务管理软件
  • 嵌入式元件面试题及参考答案
  • MYSQL的SQL优化