Vue3学习(仅为了记录,参考意义不大)

这篇具有很好参考价值的文章主要介绍了Vue3学习(仅为了记录,参考意义不大)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一.Vue3介绍

1.Vue3的优势

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

2.使用create-vue创建vue3项目

vue-cli是创建vue2.0的脚手架工具,create-vue是创建vue3的脚手架工具,create-vue构建速度非常快
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

3.vue3项目目录和关键文件

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

二.Vue3组合式API

1.setup选项

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
setup语法糖:
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
总结:
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

2.reactive和ref函数

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

3.computed

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

4.watch

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
开启深度监听同样的写法
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

5.生命周期函数

beforeUnmount和unmounted对应beforeDestoryed和destoryed
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

6.父子同信

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
defineProps原理还是props,只不过在setup里面可以去接收使用
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

7.模板引用和defineExpose宏函数

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

8.provide和inject

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

三.Vue3.3新特性

1.defineOptions

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

2.defineModel

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
父组件里面写v-model,子组件里defineModel
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

四.Pinia

1.什么是pinia

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

2.在项目中添加pinia

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
pinia官网:https://pinia.vuejs.org/zh/introduction.html

3.基本语法

(推荐组合式API写法)
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

4.action异步写法

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

5.storeToRefs方法

直接解构,不处理,数据会丢失响应式原因:
store 是一个用 reactive 包装的对象,这意味着不需要在后面写 .value
reactive实现响应式,底层的原理是proxy,而proxy是针对对象进行劫持(整个关于数据的劫持监听,都是针对于对象的)
那么就意味着,只要对象在,对象里面的所有属性以及对象的子属性都能够监视到当前数据的修改
但是 一旦使用了解构,解构意味着声明了两个变量(count, msg),两个变量分别去存了对象里的两个值(值a和值b分别赋值到了count和msg变量里)
一旦赋值完成,这两个变量跟原来的响应式变量就无关了(相当于拷贝了一份数据丢到外面去了),所以丢失了响应式
为了从 store 中提取属性时保持其响应性,需要使用 storeToRefs()
使用场景:storeToRefs一般在数据很多的时候写,避免出现counterStore.XXX太多
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

6.pinia持久化

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
官网地址:https://prazdevs.github.io/pinia-plugin-persistedstate/zh/
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
其它配置可以查阅官网
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

五.大事件项目

1.pnpm

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

2.eslint和prettier

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

  rules: {
    // prettier专注代码美观(格式化工具)
    // 1. 禁用prettier插件,并且关闭format on save
    // 2.安装Eslint插件,并配置保存时自动修复
    'prettier/prettier': [
      'warn',
      {
        singleQuote: true, // 单引号
        semi: false, // 无分号
        printwidth: 80, // 每行宽度至多80字符
        trailingComma: 'none', // 不加对象|数组最后逗号
        endofLine: 'auto' // 换行符号不限制 (win mac 不一致)
      }
    ],
    // eslint关注于规范
    'vue/multi-word-component-names': [
      'warn',
      {
        ignores: ['index'] // vue组件名称多单词组成 (忽略index.vue)
      }
    ],
    'vue/no-setup-props-destructure': ['off'], // 关闭 props 解构的校验
    // 添加未定义变量错误提示true,create-vue@3.6.3 关闭true,这里加上是为了支持下一个章节演示。
    'no-undef': 'error'
  }

3.基于husky的代码检查工作流

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
只需要对新写的代码规范(旧版代码一起校验消耗成本太大)
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

4.目录调整

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

5.路由语法解析

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
https://cn.vitejs.dev/guide/env-and-mode.html
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

6.引入elementPlus组件库

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
https://element-plus.gitee.io/zh-CN/guide/installation.html

7.pinia构建仓库和持久化

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js

8.数据交互-请求工具设计

Vue3学习(仅为了记录,参考意义不大),vue课程笔记,前端,vue,vue.js
http://axios-js.com/zh-cn/docs/#axios文章来源地址https://www.toymoban.com/news/detail-700516.html

到了这里,关于Vue3学习(仅为了记录,参考意义不大)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Vue3集成ThreeJS实现3D效果,threejs+Vite+Vue3+TypeScript 实战课程【一篇文章精通系列】

    这是一个使用Vue3,TypeScript,Vite和Three.js的项目。Vue3是一个流行的JavaScript框架,用于构建用户界面。TypeScript是一种静态类型的编程语言,它是JavaScript的超集,可以编译成纯JavaScript。Vite是一个由Evan You开发的新的前端构建工具,能够提供快速的冷启动和即时热更新。 Three.j

    2024年02月03日
    浏览(38)
  • vite + vue3 的项目中使用 vitest 做单元测试(仅供参考)

    在 vitest 中 集成了c8,c8 是测试覆盖率检查的工具,告诉开发者代码中有哪些代码行被覆盖了,哪些没有覆盖。 在package.json增加npm script 如果没安装c8,运行命令的话,Vitest 会提示安装 c8,默认yes,回车执行安装。安装后,命令行删除测试覆盖率,同时在 src/coverage 下生成一个

    2024年02月03日
    浏览(34)
  • uniapp+vue3打包问题记录

    **背景:**打包app出现问题,只显示底部导航的文字,其他一片空白 1. pages.json文件 :tabBar中的iconPath图标格式不支持svg,只支持:png, jpg, jpeg的格式,当图片改为.png的时候可以正常显示 2. 适配插件的影响 :使用了postcss-pxtorem插件,同时安装了lib-flexible插件,但因为lib-flexib

    2024年01月16日
    浏览(28)
  • vue3 父子组件传值 记录

    最近这个组件之间传值用的较多,我这该死的记性,总给忘记写法,特此记录下 补充:LeftView.vue 是父组件; Video.vue 是子组件 Video.vue 子组件 LeftView.vue 父组件 第一步 创建bus.js文件 第二步 分别在需要相互传参的组件中引入bus.js文件,并相互传参

    2024年02月11日
    浏览(33)
  • 记录--vue3函数式弹窗

    最近接到一个需求,需要在一些敏感操作进行前要求输入账号和密码,然后将输入的账号和密码加到接口请求的 header 里面。如果每个页面都去手动导入弹窗组件,在点击按钮后弹出弹窗。再拿到弹窗返回的账号密码后去请求接口也太累了,那么有没有更简单的实现方式呢?

    2024年02月02日
    浏览(24)
  • 记录--Vue3 封装 ECharts 通用组件

    配置文件这里就不再赘述,内容都是一样的,主打一个随用随取,按需导入。 chartRef :当前的 DOM 节点,即 ECharts 的容器; chartInstance :当前 DOM 节点挂载的 ECharts 实例,可用于调用实例上的方法,注册事件,自适应等; draw :用于绘制 ECharts 图表,本质是调用实例的 setOptio

    2024年02月09日
    浏览(34)
  • 记录--vue3的宏到底是什么东西?

    从 vue3 开始 vue 引入了宏,比如 defineProps 、 defineEmits 等。我们每天写 vue 代码时都会使用到这些宏,但是你有没有思考过 vue 中的宏到底是什么?为什么这些宏不需要手动从 vue 中 import ?为什么只能在 setup 顶层中使用这些宏? 要回答上面的问题,我们先来了解一下从一个

    2024年02月19日
    浏览(26)
  • 记录--Vue3 + Fabricjs 定制国庆专属头像

    生在国旗下,长在春风里!国庆将至,采黎为大家带来 定制头像2.0(国庆头像) ,让我们用代码的形式为祖国庆生!欢迎大家 点赞收藏加关注哦 想看效果或者想定制春节头像的小伙伴请直奔 效果 区域; 想一睹 定制头像2.0 小工具的原理及实现思路请耐心阅读,本文代码片

    2024年02月08日
    浏览(28)
  • 记录--vue3实现excel文件预览和打印

    在前端开发中,有时候一些业务场景中,我们有需求要去实现excel的预览和打印功能,本文在vue3中如何实现Excel文件的预览和打印。 关于实现excel文档在线预览的做法,一种方式是通过讲文档里的数据处理成html,一种是将文档处理成图片进行预览。 首先我们先讲一下实现ht

    2024年02月08日
    浏览(35)
  • 记录--vue3 + mark.js | 实现文字标注功能

    1、监听鼠标抬起事件,通过 window.getSelection() 方法获取鼠标用户选择的文本范围或光标的当前位置。 2、通过 选中的文字长度是否大于0 或 window.getSelection().isCollapsed (返回一个布尔值用于描述选区的起始点和终止点是否位于一个位置,即是否框选了)来判断是否展示标签选择的

    2024年02月08日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包