41 lines
887 B
Vue
41 lines
887 B
Vue
<!-- 装修营销组件:营销文章 -->
|
||
<template>
|
||
<view
|
||
:style="[
|
||
{
|
||
marginLeft: styles.marginLeft + 'px',
|
||
marginRight: styles.marginRight + 'px',
|
||
marginBottom: styles.marginBottom + 'px',
|
||
marginTop: styles.marginTop + 'px',
|
||
padding: styles.padding + 'px',
|
||
},
|
||
]"
|
||
>
|
||
<mp-html class="richtext" :content="state.content"></mp-html>
|
||
</view>
|
||
</template>
|
||
<script setup>
|
||
import { reactive, onMounted } from 'vue';
|
||
import ArticleApi from '@/sheep/api/promotion/article';
|
||
|
||
const props = defineProps({
|
||
data: {
|
||
type: Object,
|
||
default: {},
|
||
},
|
||
styles: {
|
||
type: Object,
|
||
default() {},
|
||
},
|
||
});
|
||
|
||
const state = reactive({
|
||
content: '',
|
||
});
|
||
|
||
onMounted(async () => {
|
||
const { data } = await ArticleApi.getArticle(props.data.id);
|
||
state.content = data.content;
|
||
});
|
||
</script>
|