【问题标题】:Javascript to allow character ` ` inside multiline stringsJavascript允许在多行字符串中使用字符``
【发布时间】:2021-01-11 08:30:02
【问题描述】:

基本上,我想用后端的初始脚本初始化我的编辑器(ace 编辑器)。但是,在某些情况下,initialScript 还包括 (`)、(')、(") 字符。所以,我很困惑如何在不更改它们的情况下使用 initialScript

因为:当我将 initialScript 解析为 html 解码 (html 实体,例如:`,在编辑器中也会显示 `

var initialScript = `from django.utils.text import slugify
from django.utils.safestring import mark_safe


def generate_unique_slug(klass, field):
    """
    return unique slug if origin slug is exist.
    eg: `foo-bar` => `foo-bar-1`
    :param `klass` is Class model.
    :param `field` is specific field for title.
    """
    origin_slug = slugify(field)
    unique_slug = origin_slug
    numb = 1
    while klass.objects.filter(slug=unique_slug).exists():
        unique_slug = '%s-%d' % (origin_slug, numb)
        numb += 1
    return unique_slug


brian='Hello life!'`;

也在我的编辑器配置中;

var initialScript = `{{ session_initial_script|default:'' }}`;
var editor = ace.edit('editor');
    editor.setTheme('ace/theme/twilight');
    editor.getSession().setMode('ace/mode/python');
    editor.getSession().setUseWrapMode(true);
    editor.getSession().setValue(initialScript);

有什么解决办法吗?

【问题讨论】:

  • 使用反斜杠 ?

标签: javascript string multiline ace-editor


【解决方案1】:

在特殊字符前使用反斜杠

var initialScript = `from django.utils.text import slugify
from django.utils.safestring import mark_safe


def generate_unique_slug(klass, field):
    """
    return unique slug if origin slug is exist.
    eg: \`foo-bar\` => \`foo-bar-1\`
    :param \`klass\` is Class model.
    :param \`field\` is specific field for title.
    """
    origin_slug = slugify(field)
    unique_slug = origin_slug
    numb = 1
    while klass.objects.filter(slug=unique_slug).exists():
        unique_slug = '%s-%d' % (origin_slug, numb)
        numb += 1
    return unique_slug


brian='Hello life!'`

【讨论】:

  • 不见不散
猜你喜欢
  • 1970-01-01
  • 2021-10-05
  • 1970-01-01
  • 2021-05-01
  • 1970-01-01
  • 2022-01-21
  • 1970-01-01
  • 2010-12-09
相关资源
最近更新 更多