vue.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript类库 > vue.js > vue3+ts+vite项目搭建

一个基于vue3+ts+vite项目搭建初探

作者:lemonChen

当市面上主流的组件库不能满足我们业务需求的时候,那么我们就有必要开发一套属于自己团队的组件库,下面这篇文章主要给大家介绍了一个基于vue3+ts+vite项目搭建的相关资料,需要的朋友可以参考下

前言

基于Vue3已经成为默认版本,目前的项目暂时还没有使用过vue3开发和最近有一个全新的新项目的基础下,使用vue3开发项目,必然是未来的一个趋势

下面记录一下怎么使用Vue3 + ts + vite 从0开始搭建一个项目

环境准备

Nodejs 版本>=12  使用node -v 查看 node版本

或者将Nodejs升级到最新的稳定版本 npm install -g n  sudo n stable 

image-20220509091913314.png

使用Vite快捷搭建

使用npm

npm init @vitejs/app

使用yarn

yarn create @vitejs/app

按照提示完成项目初始化即可

初始化项目以后可以看到项目的结构如上图

安装依赖

npm install 或者 yarn install

启动项目

npm run dev 或者 yarn dev

修改vite配置文件

找到根目录vite.config.ts文件打开

集成路由

集成Vuex

添加element ui

上面讲解vite 配置文件的时候已经提到怎么按需引入element了

现在只需要在main.ts文件中挂载element 即可

因为element plus 默认是英语 所以如果在项目中需要使用的是中文的话,可参加以下配置

在 main.ts 文件中添加

import { createApp } from 'vue'
import App from '@/App.vue'
import ElementPlus from "element-plus"

import zhCn from 'element-plus/es/locale/lang/zh-cn';
import router from '@/router/index'
import store from '@/store/index'

const app = createApp(App)

app.use(ElementPlus,{locale:zhCn})

app.use(router).use(store).mount('#app')

还有一点需要注意的是,如果您使用 unplugin-element-plus 并且只使用组件 API,您需要手动导入样式

如果系统中会经常用到ElMessage、ElMessageBox 等api,可以main.ts 文件中添加以下样式,不然会导致样式问题

import 'element-plus/es/components/message/style/css'
import 'element-plus/es/components/message-box/style/css'

集成axios

集成Sass

Vue3 使用

在vue3中去除了filters用法,如果需要用到,可以自行实现

     // 基本用法
    import { computed } from 'vue';
    export default defineComponent({
    	setup(){
    	   // 
            const name = computed({
                  return XXX;
            })
    			
            return {
    		name
            }
        }
   })
computed 还可用于使用一个v-model 双向数据绑定的功能(例如: 页面弹框显示与关闭)

需要跟props , emit 一起使用
    import { computed } from 'vue';
    export default defineComponent({
    	props:{
            modelValue:{
    		type:Boolean,
    		default:false
            }
    	}
    	emits: ['update:modelValue'],
    	setup(props,{ emit }){
    			// 
    		const dialogVisible = computed({
                    get:() => props.modelValue, // setup 函数第一个参数是props
                    set:(newVal) => {
    			emit("update:modelValue",newVal)
                    }
    		})
    			
    		return {
                    dialogVisible
    		}
    	}
    })

在其他地方引用该组件的使用 v-model 即可

总结

基于以上,一个基于Vue3 + element + vite 的基本后台管理系统,大致是可以成型的,另外还有一些比如配置eslint 代码规范, 可以自己自行添加,还有vue3 其他一些进阶的用法,会用其他的文章来进行讲述。

希望以上的内容 ,对于没有接触过vue3 开发的人会有所帮助

到此这篇关于一个基于vue3+ts+vite项目搭建的文章就介绍到这了,更多相关vue3+ts+vite项目搭建内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文