欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

详解vite+ts快速搭建vue3项目以及介绍相关特性

程序员文章站 2022-07-06 09:36:40
vite尤大在 vue 3.0 beta 直播中推荐了 vite 的工具,强调:针对vue单页面组件的无打包开发服务器,可以直接在浏览器运行请求的 vue 文件很新颖,这篇博客用它来搭建一个 vue3...

vite

尤大在 vue 3.0 beta 直播中推荐了 vite 的工具,强调:针对vue单页面组件的无打包开发服务器,可以直接在浏览器运行请求的 vue 文件

很新颖,这篇博客用它来搭建一个 vue3 的项目试试

vite 是面向现代浏览器,基于原生模块系统 esmodule 实现了按需编译的 web 开发构建工具。在生产环境下基于 rollup 打包

  • 快速冷启动服务器
  • 即时热模块更换(hmr)
  • 真正的按需编译

node >= 10.16.0

搭建

使用 vite 搭建项目

安装 typescript、、axios、eslint-plugin-vue、sass 等相关插件

配置

vite.config.ts

vite.config.ts 相当于 @vue-cli 项目中的 vue.config.js

我这简单配置一下:

router

在 src 下新建 router 文件夹,并在文件夹内创建 index.ts

ts types

项目根目录下新建 tsconfig.json 写入相关配置

src 目录下新建 types 文件夹,里面需要配置 ts 的类型

shims-vue.d.ts

images.d.ts

main.ts

然后就可以快乐地写代码了

vue3 知识

setup

vue3 中用 setup 函数整合了所有的 api;只执行一次,在生命周期函数前执行,所以在 setup 函数中拿不到当前实例 this,不能用 this 来调用 vue2 写法中定义的方法

它将接受两个参数:props、context

props

setup 函数中的 props 是响应式的,当传入新的 prop 时,它将被更新
但是,因为 props 是响应式的,不能使用 es6 解构,因为它会消除 prop 的响应性

如果需要解构 prop,可以通过使用 setup 函数中的 torefs 来安全地完成此操作

context

context 暴露三个组件的 property:{ attrs, slots, emit }
它是一个普通的 javascript 对象,不是响应式的,这意味着你可以安全地对 context 使用 es6 解构

生命周期

通过在生命周期钩子前面加上 “on” 来访问组件的生命周期钩子

因为 setup 是围绕 beforecreate 和 created 生命周期钩子运行的,所以不需要显式地定义它们
换句话说,在这两个钩子中编写的任何代码都应该直接在 setup 函数中编写

ref、reactive

ref 可以将某个普通值包装成响应式数据,仅限于简单值,内部是将值包装成对象,再通过 defineproperty 来处理的
通过 ref 包装的值,取值和设置值的时候,需用通过 .value来进行设置
可以用 ref 来获取组件的引用,替代 this.$refs 的写法

reactive 对复杂数据进行响应式处理,它的返回值是一个 proxy 对象,在 setup 函数中返回时,可以用 torefs 对 proxy 对象进行结构,方便在 template 中使用

使用如下:

computed、watch

watcheffect

响应式地跟踪函数中引用的响应式数据,当响应式数据改变时,会重新执行函数

还可以停止监听,watcheffect 返回一个函数,执行后可以停止监听

与 vue2 一样:

useroute、userouter

route   用于获取当前路由数据
router  用于路由跳转

vuex

使用 usestore 来获取 store 对象 从 vuex 中取值时,要注意必须使用 computed 进行包装,这样 vuex 中状态修改后才能在页面中响应

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