修复代码组件渲染注释、xml异常的bug
parent
4f62a0adf3
commit
c86a1d9dc6
|
@ -170,6 +170,7 @@ class Code extends Component {
|
||||||
|
|
||||||
setCode(txt, a) {
|
setCode(txt, a) {
|
||||||
let lang = this.lang
|
let lang = this.lang
|
||||||
|
let skip = false
|
||||||
|
|
||||||
switch (lang) {
|
switch (lang) {
|
||||||
case 'js':
|
case 'js':
|
||||||
|
@ -180,12 +181,14 @@ class Code extends Component {
|
||||||
break
|
break
|
||||||
|
|
||||||
case 'html':
|
case 'html':
|
||||||
|
case 'xml':
|
||||||
txt = colorHtml(txt)
|
txt = colorHtml(txt)
|
||||||
break
|
break
|
||||||
|
|
||||||
case 'css':
|
case 'css':
|
||||||
case 'scss':
|
case 'scss':
|
||||||
case 'less':
|
case 'less':
|
||||||
|
skip = true
|
||||||
txt = colorCss(txt)
|
txt = colorCss(txt)
|
||||||
break
|
break
|
||||||
|
|
||||||
|
@ -196,7 +199,15 @@ class Code extends Component {
|
||||||
}
|
}
|
||||||
// 除代码高亮用的特殊标签 <c></c> 外, 其他的全部转义
|
// 除代码高亮用的特殊标签 <c></c> 外, 其他的全部转义
|
||||||
// 避免渲染时混乱
|
// 避免渲染时混乱
|
||||||
txt = txt.replace(/<(\/?)(?!c)(\w+)([^>]*?)>/g, '<$1$2$3>')
|
|
||||||
|
if (skip === false) {
|
||||||
|
txt = txt
|
||||||
|
.replace(/<(\/?)(?!c)(\w+)([^>]*?)>/g, '<$1$2$3>')
|
||||||
|
.replace(/<!(doctype)([^>]*?)>/gi, '<$1$2>')
|
||||||
|
.replace(/<\?([^\?>]*?)\?>/g, '<?$1?>')
|
||||||
|
.replace(/<\!\-\-([^>]*?)\-\->/g, '<!--$1-->')
|
||||||
|
}
|
||||||
|
|
||||||
this.#code = txt.split('\n')
|
this.#code = txt.split('\n')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue