需要以下内容:创建一个包含 Picker 块的下拉列表 (emoji-mart-vue)
一切都适用于这段代码:
<b-dropdown variant="secondary" no-caret right class="emoji-dropdown">
<template #button-content>
<i class="far fa-smile-beam"></i>
</template>
<Picker :data="emojiIndex" set="apple" @select="pickEmoji" title="Выберите эмодзи" emoji="grinning" emojiTooltip :i18n="emojiPickerI18n" @click.prevent></Picker>
</b-dropdown>
但有一件事:当你点击任何表情符号时,下拉菜单会关闭。你怎么能确保这不会发生?同时,保留下拉行为的其余部分(当您单击它或调用它的按钮时,它被隐藏了)。
PS 正如您在上面的代码中看到的那样,我尝试了 @click.prevent 和其他事件修饰符,但没有达到预期的效果
我制作了一个只有下拉菜单和选择器的页面,事实证明,关闭选择器根本不会触发表情符号的选择。事实是,当我选择一个表情符号时,我将焦点设置在文本字段上,这会触发下拉菜单的关闭。我不得不做一个小拐杖,但现在总的来说一切正常: