vue3.0优化 (性能优化) 打包大小减少41% 初次渲染快55%,更新渲染快133% (源码升级) 使用proxy代替defineProperty实现响应式 重写虚拟DOM的实现和Tree-Shaking TypeScript vue3可以更好的支持TypeScript 新特性 Composition API setUp配置 ref 和 reactive watch 与 watchEffect provied 与inject 新的内置组件 Fragment TelePort Suspense 其他 改变
新的生命周期钩子 data 选项应始终被生命一个函数 移除keyCode支持作为v-on的修饰符 创建vue3工程 使用 vue-cli 创建 查看@vue/cli版本,确保@vue/cli版本在4.5.0以上 vue --version #安装或者升级你的@vue/cli npm install -g @vue/cli 创建 vue create vue_test 进入项目目录 cd vue_test 启动 npm run serve 常用Composition API setUp 理解:vue3.0中一个新的配置项,值为一个函数 setup是所有Composition(‘组合api’) 表演的舞台 组件中所用到的:数据 方法 等等,均要配置在setup中 setup函数的两种返回值 1.若返回一个对象,则对象中的属性,方法,在模版中均可以直接使用 // 直接在模板中调用名字即可 // 不考虑响应式写法 export default { name: 'App', setup(){ let name = 'LHD' let age = 19 function speak(){ alert('你好鸭!') } return{ name, age, speak } } } , 2.若返回一个渲染函数:则可以自定义渲染内容 import {h} from 'vue' return ()=>h('h1','你好鸭!') 注意点 尽量不要与Vue2.x配置混用 Vue2.x配置(data、methos、computed…)中可以访问到setup中的属性、方法。 但在setup中不能访问到Vue2.x配置(data、methos、computed…)。 如果有重名, setup优先。 setup不能是一个async函数,因为返回值不再是return的对象, 而是promise, 模板看不到return对象中的属性。(后期也可以返回一个Promise实例,但需要Suspense和异步组件的配合) ref函数
作用:定义一个响应式的数据 语法:const xxx = ref(ininValue) 创建一个包含响应式数据的引用对象(reference对象,简称ref对象) js中操作数据:xxx.value 模板中读取数据:需要.value,直接