1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| <template>
| <div v-html="getHtmlData" :class="$props.class" class="markdown-viewer"></div>
| </template>
|
| <script lang="ts" setup>
| import { computed } from 'vue';
| import showdown from 'showdown';
|
| const converter = new showdown.Converter();
| converter.setOption('tables', true);
| const props = defineProps({
| value: { type: String },
| class: { type: String },
| });
| const getHtmlData = computed(() => converter.makeHtml(props.value || ''));
| </script>
|
| <style scoped>
| .markdown-viewer {
| width: 100%;
| }
| </style>
|
|