Vue 3:getCurrentInstance() 是否已弃用?

2024-03-05

我看过参考文献getCurrentInstance()可以在一些旧的(?)文档和代码上使用,但在当前的 Vue 3 文档中找不到它。

Is getCurrentInstance()已弃用?

如果有,原因是什么? (inject()考虑够了吗?)如果没有,为什么我在文档中找不到它?


getCurrentInstance()已从 Vue 3 文档中删除,因为它是内部API https://github.com/vuejs/docs/issues/1422#issuecomment-1032120675:

因为实例是暴露非公共API的内部实例。从技术上讲,您从该实例使用的任何内容都可以在任何发布类型之间进行中断,因为它们不受 semver 约束。


getCurrentInstance()原本是记录于 2020 年 10 月 4 日 https://github.com/vuejs/docs/pull/590,但那是后来的事了于 2021 年 8 月 31 日删除 https://github.com/vuejs/docs/commit/1ea66dc0e67abe5c518d487218bb7e2d6a5c5324Vue 的创建者 (Evan You) 对 Composition API 文档进行了重大重构。尽管它已从文档中删除,getCurrentInstance() still:

  • 广泛应用于Vue核心 https://github.com/vuejs/core/search?q=getCurrentInstance.

  • 代码中未记录为已弃用 https://github.com/vuejs/core/blob/d52907f/packages/runtime-core/src/component.ts#L561.

  • 作为高级 API 的一部分导出 https://github.com/vuejs/core/blob/9c304bfe7942a20264235865b4bb5f6e53fdee0d/packages/runtime-core/src/index.ts#L78-L82.

鉴于它是一个未记录的内部 API,请谨慎使用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Vue 3:getCurrentInstance() 是否已弃用? 的相关文章

  • 如何切换各个
  • 元素的类?
  • 当我切换变量时active在下面的代码中 activeCSS 类应用于列表中的所有元素 从列表中的所有元素中删除 如何单独定位列表元素 Todo List 示例具有类似的功能 待办事项 待办事项已完成 但它有点超出了我的技能范围 ul li
  • v-file-input .click() 不是函数

    我试图以编程方式触发 v file input 的 click 事件 因为它在 Vuetify 的文档中 但它显示一个错误this refs imagePicker click is not a function我在这里错过了什么吗 代码重
  • 如何将Vue包装的对象转换为普通对象

    我需要将对象类型的数据变量分配给普通变量 const myVue new Vue el myVue data vars show Form methods assign vars const new vars this vars html
  • vue-chartjs 反应数据错误

    我正在尝试使用反应式数据混合vue chartjs http vue chartjs org home id reactive data 用于设置初始数据的已安装函数正在运行 我可以使用 API 响应正确查看图表 fetchSessionT
  • 删除Vue子组件

    我真的被这个问题困扰了 我创建了一个由子组件组成的 Vue 2 0 组件 它全部都是 Webpacked 等 例如 这是父组件 div h1 This is just a title for lulz h1 div
  • 如何使用 TypeScript 接口输入 Vue 提示 props?

    这件事真的让我的头撞到了墙上 我记得在 Angular 工作时 TS 接口可用于输入提示参数 我想对 Vue 中的 props 做同样的事情 有任何想法吗 代码如下 但仅针对标准对象进行检查 因此传入任何对象都是有效的 import Vue
  • Vuetify 组件 v-form 对声明的 @submit 事件处理程序没有响应

    我正在使用 Vuetify 和 VueJS 最新版本 这是一个小模板登录 vue
  • 将 Stripe.js 作为 ES 模块导入到 Vue 中

    我正在尝试按照 stripe elements 文档中的说明并将 ES 模块安装到我的 Vue 支付组件中 https stripe com docs stripe js html js 请注意 目前 Stripe 网站 ES 模块安装选项
  • 在Vue.js 3中添加全局变量

    如何在 Vue js 3 中添加全局变量 在 Vue js 2 中 我们在main js file Vue prototype myGlobalVariable globalVariable 最直接的替换就是app config globa
  • 如何在没有模块的情况下在 vue 中使用 TypeScript

    In package json I have devDependencies vue 2 5 16 这给了我index d ts vue d ts and so on https github com vuejs vue tree v2 5
  • Vue-动态导入vue组件

    我有很多组件 我想按需导入 我有一个下拉菜单 其中实际上包含组件列表 即要加载的内容 我试过这个例子
  • beforeRouteUpdate 和观看 '$route' - Vue.js 之间的区别?

    正如我们所知 为了对我们使用的同一组件中的参数变化做出反应beforeRouteUpdate挂钩或观看 route 观看 route const User template watch route to from react to rout
  • 将变量从调用它的父页面传递给 Vue 组件

    我有一个简单的表格 显示了我的所有数据 主文件 php table class table table bordered table hover thead tr th Job Name th th Job Description th t
  • 在 Vue 3 的 Jest 测试中模拟 vue-router useRouter()

    我在我的应用程序中使用 Vue 3 和 Vue Router 并且在使用 Jest 对使用的组件创建单元测试时遇到了问题useRoute 例如以下内容
  • nuxt.js - 如何在服务器端为所有客户端缓存 axios 调用

    我正在使用 vue nuxt js 应用程序 我想知道是否可以为所有客户端缓存 axios webservice 调用 我必须获取一些货币参考数据 而每个客户都必须调用这些数据并没有多大意义 有人可以给我一些提示 甚至是一个例子吗 谢谢 这
  • 在 Vue.js 2.0 中实现 v-model 格式化的正确方法是什么

    举个简单的例子 输入货币数据的文本框 要求是以 1 234 567 格式显示用户输入并删除小数点 我尝试过 vue 指令 当 UI 由于其他控件而刷新时 不会调用指令的 update 方法 因此文本框中的值将恢复为没有任何格式的值 我还尝试
  • 为什么我从 c# 到 js 得到不同的 MD5 哈希值?

    我有一个用于加密密码的 C 函数 System Security Cryptography MD5CryptoServiceProvider md5Provider new System Security Cryptography MD5C
  • Nuxt JS 插件是否可以只运行一次?

    我有几个 VueX 操作 仅在服务器上运行 并从nuxtServerInit 它们向外部服务发出 HTTP 请求 这会减慢 TTFB 的速度 我想实现一个缓存插件 可以从 Redis 存储和检索值 目的是避免在每个请求的操作中发出 HTTP
  • Vuejs2 Modal 与 vue-router 中的路线

    我正在尝试使用模态创建一条路由 当您使用路由器链接访问此路由器路径时 会在当前页面上方显示一个模态 或者如果我直接从 url 访问 则会出现上面带有模态的索引 例如 我在http localhost 个人资料 1 http localhos
  • $vuetify.goTo 不会在 v-card 组件内滚动

    我有一个带有 v 卡的组件 我在卡片标题区域放置了一个简单的按钮 当我单击时 我看到该方法被触发 它显示在控制台中 但是 卡片永远不会滚动 如果我输错了类名 则会收到错误 因此 goTo 似乎会执行某些操作 因为它找不到该类 没有拼写错误

随机推荐