首页 > 解决方案 > 在 Vue 中使用插槽时,函数位置在哪里?

问题描述

如果 componentA是 component 的父B级,其中 B 有一个插槽。如果A将插槽与按钮一起使用,您将 clickHandlerA放在B哪里?

只要您没有同时拥有两者,两者都可能吗?如果是这样,是否有最佳实践或取决于具体情况?

标签: vue.jsvuejs2

解决方案


你把它放在A中。

插槽只是 Vue 将模板“放在这里”的提示。B不知道您正在该模板中呈现按钮。A确定它是一个正在呈现的按钮,从而确定按下该按钮时会发生什么。

从技术上讲,您可以从组件 B 检查插槽中正在呈现的内容,如果它是一个按钮,则将 clickHandler 应用于插槽,因为它只是引擎盖下的一个渲染函数。但是为了“我把我的功能放在哪里”,这通常太复杂而且很少有用。


推荐阅读