Ugh..
This commit is contained in:
@@ -34,9 +34,11 @@ button.copy:hover {
|
||||
</style>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { useStateStore } from "@/stores/stateStore";
|
||||
import { nextTick, ref, watch } from "vue"
|
||||
|
||||
const bootstrap = useNuxtApp().$bootstrap;
|
||||
const store = useStateStore();
|
||||
|
||||
defineProps({
|
||||
code: {
|
||||
@@ -89,6 +91,7 @@ watch(copied, (newValue, oldValue) => {
|
||||
if (newValue) {
|
||||
// Ensure the DOM is updated before executing
|
||||
nextTick(() => {
|
||||
store.clearBootstrap();
|
||||
// @ts-ignore
|
||||
stickyTooltip.value = new bootstrap.Tooltip(stickyTooltipElement.value, { trigger: "manual" });
|
||||
stickyTooltip.value.show();
|
||||
|
||||
@@ -28,7 +28,12 @@ export const useStateStore = defineStore("state", () => {
|
||||
tooltipList.value = [...tooltipTriggerList].map(tooltip => new bootstrap.Tooltip(tooltip));
|
||||
};
|
||||
|
||||
return { colorMode, toggleColorMode, initBootstrap }
|
||||
const clearBootstrap = (): void => {
|
||||
popoverList.value.forEach(popover => popover.dispose());
|
||||
tooltipList.value.forEach(tooltip => tooltip.dispose());
|
||||
};
|
||||
|
||||
return { colorMode, toggleColorMode, initBootstrap, clearBootstrap }
|
||||
}, {
|
||||
persist: process.env.NODE_ENV === 'development' ? true : false,
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user