fix: 处理加上链接内容就会消失的bug

This commit is contained in:
奔跑的面条 2023-07-21 16:43:05 +08:00
parent d30b04dae4
commit b841fe876d
3 changed files with 135 additions and 135 deletions

View File

@ -1,89 +1,89 @@
<template> <template>
<collapse-item name="信息" :expanded="true"> <collapse-item name="信息" :expanded="true">
<setting-item-box name="文字" :alone="true"> <setting-item-box name="文字" :alone="true">
<setting-item> <setting-item>
<n-input v-model:value="optionData.dataset" size="small"></n-input> <n-input v-model:value="optionData.dataset" type="textarea" size="small"></n-input>
</setting-item> </setting-item>
</setting-item-box> </setting-item-box>
</collapse-item> </collapse-item>
<collapse-item name="样式" :expanded="true"> <collapse-item name="样式" :expanded="true">
<setting-item-box name="文字"> <setting-item-box name="文字">
<setting-item name="颜色"> <setting-item name="颜色">
<n-color-picker size="small" :modes="['hex']" v-model:value="optionData.fontColor"></n-color-picker> <n-color-picker size="small" :modes="['hex']" v-model:value="optionData.fontColor"></n-color-picker>
</setting-item> </setting-item>
<setting-item name="字体大小"> <setting-item name="字体大小">
<n-input-number v-model:value="optionData.fontSize" size="small" placeholder="字体大小"></n-input-number> <n-input-number v-model:value="optionData.fontSize" size="small" placeholder="字体大小"></n-input-number>
</setting-item> </setting-item>
<setting-item name="字体粗细"> <setting-item name="字体粗细">
<n-select v-model:value="optionData.fontWeight" size="small" :options="fontWeightOptions" /> <n-select v-model:value="optionData.fontWeight" size="small" :options="fontWeightOptions" />
</setting-item> </setting-item>
<setting-item name="字间距"> <setting-item name="字间距">
<n-input-number v-model:value="optionData.letterSpacing" size="small" placeholder="输入字间距"></n-input-number> <n-input-number v-model:value="optionData.letterSpacing" size="small" placeholder="输入字间距"></n-input-number>
</setting-item> </setting-item>
</setting-item-box> </setting-item-box>
<setting-item-box name="阴影"> <setting-item-box name="阴影">
<setting-item> <setting-item>
<n-space> <n-space>
<n-switch v-model:value="optionData.showShadow" size="small" /> <n-switch v-model:value="optionData.showShadow" size="small" />
<n-text>展示阴影</n-text> <n-text>展示阴影</n-text>
</n-space> </n-space>
</setting-item> </setting-item>
<setting-item name="颜色"> <setting-item name="颜色">
<n-color-picker size="small" :modes="['hex']" v-model:value="optionData.colorShadow"></n-color-picker <n-color-picker size="small" :modes="['hex']" v-model:value="optionData.colorShadow"></n-color-picker
></setting-item> ></setting-item>
<setting-item name="x"> <setting-item name="x">
<n-input-number v-model:value="optionData.hShadow" size="small"></n-input-number <n-input-number v-model:value="optionData.hShadow" size="small"></n-input-number
></setting-item> ></setting-item>
<setting-item name="y"> <setting-item name="y">
<n-input-number v-model:value="optionData.vShadow" size="small"></n-input-number <n-input-number v-model:value="optionData.vShadow" size="small"></n-input-number
></setting-item> ></setting-item>
<setting-item name="模糊"> <setting-item name="模糊">
<n-input-number v-model:value="optionData.blurShadow" size="small"></n-input-number <n-input-number v-model:value="optionData.blurShadow" size="small"></n-input-number
></setting-item> ></setting-item>
</setting-item-box> </setting-item-box>
<setting-item-box name="动画"> <setting-item-box name="动画">
<setting-item name="动画速度"> <setting-item name="动画速度">
<n-input-number <n-input-number
v-model:value="optionData.animationSpeed" v-model:value="optionData.animationSpeed"
size="small" size="small"
placeholder="动画速度" placeholder="动画速度"
:min="0" :min="0"
></n-input-number> ></n-input-number>
</setting-item> </setting-item>
<setting-item name="动画间隔"> <setting-item name="动画间隔">
<n-input-number <n-input-number
v-model:value="optionData.animationTime" v-model:value="optionData.animationTime"
size="small" size="small"
placeholder="动画间隔" placeholder="动画间隔"
:min="0" :min="0"
></n-input-number> ></n-input-number>
</setting-item> </setting-item>
</setting-item-box> </setting-item-box>
</collapse-item> </collapse-item>
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { PropType } from 'vue' import { PropType } from 'vue'
import { option, FontWeightEnum, FontWeightObject } from './config' import { option, FontWeightEnum, FontWeightObject } from './config'
import { CollapseItem, SettingItemBox, SettingItem } from '@/components/Pages/ChartItemSetting' import { CollapseItem, SettingItemBox, SettingItem } from '@/components/Pages/ChartItemSetting'
const props = defineProps({ const props = defineProps({
optionData: { optionData: {
type: Object as PropType<typeof option>, type: Object as PropType<typeof option>,
required: true required: true
} }
}) })
const fontWeightOptions = [ const fontWeightOptions = [
{ {
label: FontWeightEnum.NORMAL, label: FontWeightEnum.NORMAL,
value: FontWeightObject[FontWeightEnum.NORMAL] value: FontWeightObject[FontWeightEnum.NORMAL]
}, },
{ {
label: FontWeightEnum.BOLD, label: FontWeightEnum.BOLD,
value: FontWeightObject[FontWeightEnum.BOLD] value: FontWeightObject[FontWeightEnum.BOLD]
} }
] ]
</script> </script>

View File

@ -1,7 +1,7 @@
<template> <template>
<div class="go-text-box"> <div class="go-text-box">
<div class="content"> <div class="content">
<span style="cursor: pointer; white-space: pre-wrap" v-if="link" @click="click"></span> <span style="cursor: pointer; white-space: pre-wrap" v-if="link" @click="click">{{ option.dataset }}</span>
<span style="white-space: pre-wrap" v-else>{{ option.dataset }}</span> <span style="white-space: pre-wrap" v-else>{{ option.dataset }}</span>
</div> </div>
</div> </div>

View File

@ -1,45 +1,45 @@
<template> <template>
<collapse-item name="信息" :expanded="true"> <collapse-item name="信息" :expanded="true">
<setting-item-box name="文字" :alone="true"> <setting-item-box name="文字" :alone="true">
<setting-item> <setting-item>
<n-input v-model:value="optionData.dataset" size="small"></n-input> <n-input v-model:value="optionData.dataset" type="textarea" size="small"></n-input>
</setting-item> </setting-item>
</setting-item-box> </setting-item-box>
</collapse-item> </collapse-item>
<collapse-item name="样式" :expanded="true"> <collapse-item name="样式" :expanded="true">
<setting-item-box name="文字"> <setting-item-box name="文字">
<setting-item name="字体大小"> <setting-item name="字体大小">
<n-input-number v-model:value="optionData.size" size="small" placeholder="字体大小"></n-input-number> <n-input-number v-model:value="optionData.size" size="small" placeholder="字体大小"></n-input-number>
</setting-item> </setting-item>
</setting-item-box> </setting-item-box>
<setting-item-box name="渐变色参数"> <setting-item-box name="渐变色参数">
<setting-item name="起始值"> <setting-item name="起始值">
<n-color-picker size="small" :modes="['hex']" v-model:value="optionData.gradient.from"></n-color-picker> <n-color-picker size="small" :modes="['hex']" v-model:value="optionData.gradient.from"></n-color-picker>
</setting-item> </setting-item>
<setting-item name="结束值"> <setting-item name="结束值">
<n-color-picker size="small" :modes="['hex']" v-model:value="optionData.gradient.to"></n-color-picker> <n-color-picker size="small" :modes="['hex']" v-model:value="optionData.gradient.to"></n-color-picker>
</setting-item> </setting-item>
<setting-item name="偏移角度"> <setting-item name="偏移角度">
<n-input-number v-model:value="optionData.gradient.deg" size="small" placeholder="颜色旋转"></n-input-number> <n-input-number v-model:value="optionData.gradient.deg" size="small" placeholder="颜色旋转"></n-input-number>
</setting-item> </setting-item>
</setting-item-box> </setting-item-box>
</collapse-item> </collapse-item>
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { PropType } from 'vue' import { PropType } from 'vue'
import { option } from './config' import { option } from './config'
import { import {
CollapseItem, CollapseItem,
SettingItemBox, SettingItemBox,
SettingItem SettingItem
} from '@/components/Pages/ChartItemSetting' } from '@/components/Pages/ChartItemSetting'
const props = defineProps({ const props = defineProps({
optionData: { optionData: {
type: Object as PropType<typeof option>, type: Object as PropType<typeof option>,
required: true required: true
} }
}) })
</script> </script>