Переглянути джерело

fix: support echart function option (#19424)

tags/1.4.0
Good Wood 5 місяці тому
джерело
коміт
198fbb9b3d
Аккаунт користувача з таким Email не знайдено
1 змінених файлів з 8 додано та 2 видалено
  1. 8
    2
      web/app/components/base/markdown.tsx

+ 8
- 2
web/app/components/base/markdown.tsx Переглянути файл

@@ -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(() => {

Завантаження…
Відмінити
Зберегти