* isRef: 检查一个值是否为一个 ref 对象
* isReactive: 检查一个对象是否是由`reactive`创建的响应式代理
* isReadonly: 检查一个对象是否是由`readonly`创建的只读代理
* isProxy: 检查一个对象是否是由`reactive`或者`readonly`方法创建的代理
```html
<script lang="ts">
import { defineComponent, isProxy, isReactive, isReadonly, isRef, reactive, readonly, ref } from 'vue'
export default defineComponent({
name: 'APP',
setup() {
console.info(isRef(ref()))
console.info(isReactive(reactive({})))
console.info(isReadonly(readonly({})))
console.info(isProxy(readonly({})))
}
})
</script>
```
- nodejs
- 同时安装多个node版本
- Vue3
- 创建Vue3项目
- 使用 vue-cli 创建
- 使用 vite 创建
- 常用的Composition API
- setup
- ref
- reactive
- 响应数据原理
- setup细节
- reactive与ref细节
- 计算属性与监视
- 生命周期函数
- toRefs
- 其它的Composition API
- shallowReactive与shallowRef
- readonly与shallowReadonly
- toRaw与markRaw
- toRef
- customRef
- provide与inject
- 响应式数据的判断
- 组件
- Fragment片断
- Teleport瞬移
- Suspense
- ES6
- Promise对象
- Promise作用
- 状态与过程
- 基本使用
- 常用API
- async与await
- Axios