首页 > 其他分享 >读 Vue3 API 记录

读 Vue3 API 记录

时间:2022-11-30 18:48:26浏览次数:53  
标签:自定义 记录 app value API 应用 Vue3 组件 config

应用实例

创建一个应用const app = createApp()

将应用挂载在一个容器元素中  app.mount('#app')

卸载一个已挂载的应用 app.unmount()

提供一个值,可以在应用中的所有后代组件中注入使用 app.provide(key,value) 

一个用于注册能够被应用内所有组件实例访问到的全局属性的对象 app.config.globalProperties.msg = 'hello'

在某个组件中使用app应用provide中定义的值 inject(key)

在应用中注册全局组件 app.component(componentName,component)

在应用中注册全局指令 app.directive(directiveName,{/*指令钩子*/})

在应用中安装一个插件 app.use(pluginName)

用于为应用内抛出的未捕获错误指定一个全局处理函数 app.config.errorHandler = (err, instance, info) => { }

用于为 Vue 的运行时警告指定一个自定义处理函数(dev) app.config.warnHandler = (msg, instance, trace) => { // `trace` is the component hierarchy trace }

设置此项为 true 可以在浏览器开发工具的“性能/时间线”页中启用对组件初始化、编译、渲染和修补的性能表现追踪(dev,performance.mark)  app.config.performance

用于指定一个检查方法来识别原生自定义元素 // 将所有标签前缀为 `ion-` 的标签视为自定义元素 app.config.compilerOptions.isCustomElement = (tag) => { return tag.startsWith('ion-') }

用于调整模板中空格的处理行为 app.config.compilerOptions.whitespace

用于调整模板内文本插值的分隔符 app.config.compilerOptions.delimiters

用于调整是否移除模板中的 HTML 注释 app.config.compilerOptions.comments = true

一个用于定义自定义组件选项的合并策略的对象  app.config.optionMergeStrategies

======================================

通用

暴露当前所使用的 Vue 版本 import { version } from 'vue'

等待下一次 DOM 更新刷新的工具方法 import { nextTick } from 'vue'

在定义 Vue 组件时提供类型推导的辅助函数 import { defineComponent } from 'vue' ???

定义一个异步组件,它在运行时是懒加载的。参数可以是一个异步加载函数,或是对加载行为进行更具体定制的一个选项对象 defineAsyncComponent ???

返回一个原生自定义元素类的构造器 defineCustomElement

=======================================

组合式api

===========================

响应式核心

ref  原理:重新定义属性的实现方式

reactive 原理 实现对象代理 简单例子:
<script>
        let targetMap = new WeakMap();
        // ref 原理,重新定义属性的实现方式
        let rawString = "a"
        class refImpl {
            _value = null;
            constructor(_rawValue) {
                this._value = _rawValue
            }
            get value() {
                return this._value;
            }
            set value(newValue) {
                this._value = newValue
            }
        }

        let refString = new refImpl(rawString)

        // reactive 原理 实现对象代理
        let rawObj = {
            "a": 1
        }

        function reactive(rawValue) {
            return new Proxy(rawValue, {
                get(target, property, _) {
                    return target[property]
                },
                set(target, property, value) {
                    target[property] = value
                }
            })
        }

        let reactiveObj = reactive(rawObj)

 

  。。。。。next

标签:自定义,记录,app,value,API,应用,Vue3,组件,config
From: https://www.cnblogs.com/Merrys/p/16938876.html

相关文章

  • 文件不能访问的问题记录
    今天在生成一个文件的md5码的时候遇到问题,文件拒绝访问。 刚开始以为是.netcore3.1的问题,把.netcore升级到6.0也没解决 又以为是.netcore的问题,换成.netframe......
  • 平衡树写题记录
    练思维的同时还是顺便点一下科技树吧。。。顺便fhq-treap好写好用,再也不用Splay了,反正不学LCT了。这下面是实现大多数功能的fhq-treap板子1mt19937rnd(time(0));2......
  • MobPush for SDK API
    推送监听接口(addPushReceiver)描述:添加推送监听,可监听接收到的自定义消息(透传消息)、通知消息、通知栏点击事件、别名和标签变更操作。/***com.mob.pushsdk.MobPush.cl......
  • 个人微信api
    E云是一套完整的的第三方服务平台,包含微信API服务、企微API服务、SCRM系统定制、企微系统定制、服务类软件定制等模块,本文档主要讲述个微API服务相关,以下简称API,它能处理......
  • vue3 通过ref 找到 dom实例
    页面<el-tab-panelabel="用户名登录"><el-form:model="form"label-position="right"label-width="70px"......
  • 架构学习-记录003
                 ......
  • Vue3+Ts+Vite+Pinia后台管理项目实战
    一、新建有一个文件夹命名cms二、使用VsCode打开cms文件夹,在终端中执行命令npminitvue@latest这一指令将会安装并执行create-vue,它是Vue官方的项目脚手架工具。......
  • 新增api后current.txt更新问题
    在新增api后,进行系统编译前,需要先在系统中使用make命令,对current.txt进行自动更新。(1)android低版本,新增api直接编译,会出现入下异常:******************************Y......
  • 1、Vue3的Vite独立使用一个variables.less文件存储全局less变量
    Vue3采用Vite构建了,如何在项目中使用独立的一个less变量文件存储全局less变量呢?1)引入less和less-load npmilessless-load--save2)修改vite.config.js其中重要的......
  • Dubbo -注解方式和Api方式
    注解方式服务端<?xmlversion="1.0"encoding="UTF-8"?><beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema......