Parcourir la source

fix: support echart function option (#19424)

tags/1.4.0
Good Wood il y a 5 mois
Parent
révision
198fbb9b3d
Aucun compte lié à l'adresse e-mail de l'auteur
1 fichiers modifiés avec 8 ajouts et 2 suppressions
  1. 8
    2
      web/app/components/base/markdown.tsx

+ 8
- 2
web/app/components/base/markdown.tsx Voir le fichier

@@ -128,13 +128,19 @@ const CodeBlock: any = memo(({ inline, className, children = '', ...props }: any
const language = match?.[1]
const languageShowName = getCorrectCapitalizationLanguageName(language || '')
const chartData = useMemo(() => {
const str = String(children).replace(/\n$/, '')
if (language === 'echarts') {
try {
return JSON.parse(String(children).replace(/\n$/, ''))
return JSON.parse(str)
}
catch { }
try {
// eslint-disable-next-line no-new-func, sonarjs/code-eval
return new Function(`return ${str}`)()
}
catch { }
}
return JSON.parse('{"title":{"text":"ECharts error - Wrong JSON format."}}')
return JSON.parse('{"title":{"text":"ECharts error - Wrong option."}}')
}, [language, children])

const renderCodeContent = useMemo(() => {

Chargement…
Annuler
Enregistrer