Open ga676005 opened 2 years ago
發現有類似的 issue,不知是否解決了 #42
做一個 Contextmenu.vue <Contextmenu ref="menu"> ,把 menu ref 存起來,在一個別人組件用 v-for 的 list 中把 menu ref 引入,然後可以寫 <div v-contextmenu:menu>open<div> 打開 menu
<Contextmenu ref="menu">
<div v-contextmenu:menu>open<div>
報錯: 没有找到 menu 对应的实例
menu.js
let menu = null export function setMenu(contextmenuRef) { menu = contextmenuRef } export function getMenu() { return menu }
Menu.vue
<script> import { setMenu } from '@/stores/menu.js' const contextmenu = ref() onMounted(() => { setMenu(contextmenu) }) </script> <template> <Contextmenu ref="contextmenu"> //... </Contextmenu> </template>
OtherComponent.vue
<script> import { getMenu } from '@/stores/menu.js' </script> <template> <Menu /> <div v-contextmenu:menu>open</div> </template>
使用 v-contextmenu:menu 但 menu 不是在目前這個 SFC 裡用 ref="menu" 取得的,而是另外 import 的,menu 無法使用 報錯: 没有找到 menu 对应的实例
v-contextmenu:menu
ref="menu"
Vue
同问
發現有類似的 issue,不知是否解決了 #42
期望结果
做一個 Contextmenu.vue
<Contextmenu ref="menu">
,把 menu ref 存起來,在一個別人組件用 v-for 的 list 中把 menu ref 引入,然後可以寫<div v-contextmenu:menu>open<div>
打開 menu实际结果
報錯: 没有找到 menu 对应的实例
复现步骤
menu.js
Menu.vue
OtherComponent.vue
使用
v-contextmenu:menu
但 menu 不是在目前這個 SFC 裡用ref="menu"
取得的,而是另外 import 的,menu 無法使用 報錯: 没有找到 menu 对应的实例环境说明
Vue
版本:3.2.20