Skip to content
Snippets Groups Projects
Commit ace90c85 authored by Martin Koerwien's avatar Martin Koerwien
Browse files

fix: implement facetclicked emit

parent d691f16d
Branches composition-api-changes
Tags
No related merge requests found
<template> <template>
<div style="width:25%"> <div style="width:25%">
<div v-for="item in config"> <div v-for="item in config">
<component :is="getFacet(item.id)" :config="item"/> <component :is="getFacet(item.id)" :config="item" @facet-clicked="facetClicked"/>
</div> </div>
</div> </div>
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { getFacet } from "./getFacet" import { getFacet } from "./getFacet"
import {FacetsConfig} from "./types"; import {FacetsConfig} from "./types";
import {useFacets} from "./useFacets"; import {useFacets} from "./useFacets";
import {ref, watchEffect} from "vue"; import {ref, watchEffect} from "vue";
const props = defineProps<{ const props = defineProps<{
facetsConfig: FacetsConfig facetsConfig: FacetsConfig
facetsIds: [String] facetsIds: [String]
}>(); }>();
let config = ref([]); let config = ref([]);
watchEffect(() => { watchEffect(() => {
config = useFacets(props.facetsConfig, props.facetsIds); config = useFacets(props.facetsConfig, props.facetsIds);
}) });
const facetClicked = (facetId, item) => {
console.log("CONTAINER facetClicked", facetId, item)
}
</script> </script>
...@@ -36,7 +36,7 @@ ...@@ -36,7 +36,7 @@
:count="getFacetCount(item)" :count="getFacetCount(item)"
:hide-count="fieldId === 'dataScope'" :hide-count="fieldId === 'dataScope'"
:class="{active: facetIsSelected(fieldId, item)}" :class="{active: facetIsSelected(fieldId, item)}"
@click.native="facetClicked(fieldId, item)" @click.native="$emit('facet-clicked', fieldId, item)"
/> />
</div> </div>
<button <button
...@@ -75,13 +75,14 @@ export default defineComponent({ ...@@ -75,13 +75,14 @@ export default defineComponent({
console.log("facetIsSelected", fieldId, item); console.log("facetIsSelected", fieldId, item);
} }
}, },
facetClicked: { // facetClicked: {
type: Function, // type: Function,
default: (fieldId, item) => { // default: (fieldId, item) => {
console.log("facetClicked", fieldId, item); // console.log("facetClicked", fieldId, item);
} // }
} // }
}, },
emits: ['facet-clicked'],
data() { data() {
return { return {
isExpanded: false, isExpanded: false,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment