版本
2.7.14
复现链接
重现步骤
使用Composition API,提供一个值,然后将其注入到同一个组件中。
预期结果
值将被注入;这是在2.6 @vue/composition-api插件中的预期行为。
实际发生的情况
找不到这个注入键,打印出警告(如果它依赖于这种行为,就会破坏应用程序):
[Vue warn]: injection "Symbol(FooKey)" not found.
这似乎在#12636中之前就已经报告过了,但修复的目标是一些生命周期相关的东西,而不是这个底层的功能变化。我正在尝试将我的公司从Vue 2.6升级到Vue 2.7(希望在那之后升级到Vue 3),但是像这样的小破坏性更改使得升级变得非常困难。
2条答案
按热度按时间utugiqy61#
我认为这是故意设计的,而且@vue/composition-api库可能有一个bug。
s4n0splo2#
我可以问一下为什么吗?我不明白为什么在提供它之后,你无法访问当前示例中的某些内容。这似乎完全合理,因为所有必要的上下文都存在。
这种破坏性的变化使得更新大型应用程序到Vue的更新版本变得非常困难。我知道也许你不认为从@vue/composition-api的过渡是破坏性的,但这是那些仍然停留在Vue 2.6的应用程序的现实,它们是Composition API的早期采用者。