javascript - 从方法中获取目标元素(无事件)
问题描述
我有一个包含各种链接的侧边栏
<sidebar-link href="/dashboard" icon="HomeIcon" :is-active="isActive()" />
<sidebar-link href="/test" icon="TestIcon" :is-active="isActive()" />
如果我给isActive('/dashboard')
它,它会根据 currentUrl 返回真/假,它工作正常。
然而,由于这个属性已经存在于元素(href
标签)上,我在想是否有可能在这个函数中获取当前元素。
我试过了:
<sidebar-link href="/dashboard" icon="HomeIcon" :is-active="isActive($event)" />
methods: {
isActive(e) {
console.log(e); // this returns undefined
}
}
有没有办法传递目标元素,以便我可以使用 likee.target.href
以减少重复。
解决方案
您可以像这样使用$refs来定位特定元素
<sidebar-link ref="fancySidebarLink" />
methods: {
isActive(e) {
console.log(this.$refs.fancySidebarLink)
}
}
您还可以v-for
在所有侧边栏链接上并在每次迭代时调用您的初始函数!( isActive
)
推荐阅读
- javascript - 引导验证动态元素
- python - 将多个 csv 文件与不同的列合并
- npm - 无法从 package-lock.json 和 node_modules 文件夹中删除依赖项
- julia - 如何从`String`s或`Symbol`s列表中创建`Enum`?
- javascript - 从实时数据快照中获取对象数组 - Cloud Firestore
- svelte - 造型特殊的苗条元素
- typescript - 如何在 TypeScript 中将 switch 语句转换为对象文字
- r - 将具有多个类别的名义变量重新编码为虚拟变量
- function - 如何在 NUXT 中为调用 APIs 设置全局函数?
- loopbackjs - 如何在 Loopback 3 中为自动生成的 SQL 查询添加 NOLOCK