如何使用 go buffalo 框架渲染羽毛笔 js 内容



我知道的选项是,

  1. 从提供 JSON 结构getContents API 获取 quilljs 的内容。我可以将其发布到服务器并将其存储在服务器中。

  2. 获取传递给 Quill 编辑器的div的内部 HTML 并存储它。

方法1:

在显示它时,我需要将水牛模板中的内容写入变量,例如

<script> var contentJSON = "<%= content %>"</script>

然后,一旦页面加载,我需要像quillInstance.setContents(contentJSON)一样设置内容

方法2:

如果请求遭到破坏,则 html 可能包含未转义的脚本。所以如果我像这样尝试

c.Set("getContent", func(content string) template.HTML {
    return template.HTML(html.EscapeString(content))
})

这会转义所有 html 实体。所以羽毛笔 js 引入的所有div、样式也随之消失。所以整个内容看起来就像一个普通的字符串。

存储内容的正确方法是什么?我正在寻找一种在服务器中呈现它的方法。

最后我

以以下内容结束,

Helpers: render.Helpers{
            "quil_for": func(content string) template.HTML {
                content = strings.ReplaceAll(content, "<script>", "&lt;script&gt;")
                content = strings.ReplaceAll(content, "<a>", "&lt;a&gt;")
                content = strings.ReplaceAll(content, "</a>", "&lt;/a&gt;")
                content = strings.ReplaceAll(content, "</script>", "&lt;/script&gt;")
                return template.HTML(content)
            },
        },

而不是这个

c.Set("getContent", func(content string) template.HTML {
    return template.HTML(html.EscapeString(content))
})

这仅转义脚本和锚标记以及 html 的 res。

相关内容

  • 没有找到相关文章

最新更新