1: setup 函数新特性:
使用Composition API 启用函数;
2: 在beforeCreate之前调用;
3: 在setup中没有this 指向问题。
4: 可以返回一个对象,这个对象的属性被合并到渲染上下文,并可以在模板中直接使用;
5: 接收props对象作为第一个参数,接收来的props对象,可以通过watchEffect监视其变化。
6: 接受context对象作为第二个参数,这个对象包含attrs,slots,emit三个属性。
7: setup 返回的refs 对象会自动展开在模板中, 因此不需要写属性 .value.
8: setup 函数: 接受解析后props 作为其第一个参数:
请注意,props对象是响应式的 -,传入新的prop时也会跟着更新,并且watch函数可以监听到props变化。
9: 第二个参数提供了一个上下文对象,该对象暴露的一系列可选的属性,与之前在2.x API中this包含的属性一致: attrs和slots是内部组件实例上相应值的代理。这样可以确保它们在更新后始终显示最新值,不必担心在对它们进行解构时,引用是过时的:
10: this的用法:
setup()里面没有this。 魔法this可能带来许多诡异的事情,直接抛弃。
由于我们不能在setup 函数中使用data 和methods ,所以vue 为了避免我们我们错误使用, 直接将 setup 函数中的 this 修改成了undefined
11: setup 函数只能是同步的不能是异步的。