【问题标题】:In Node red messages double quotes are converted to "在节点红色消息中,双引号被转换为 "
【发布时间】:2019-01-17 12:58:12
【问题描述】:

我正在尝试为我的 iot webapp 制作日历应用程序。我为此目的使用红色节点。每当我传递消息时,双引号都会转换为"

events = [
    {
        " occ": "1",
        "first": "1",
        "sec": "2",
        "third": "2019",
        "start": "11",
        "end": "12"
    } 

];

变成如图所示:

【问题讨论】:

  • 到底是什么问题?

标签: javascript arrays node-red


【解决方案1】:

您没有提及您的流程正在做什么或您正在使用哪些节点,因此很难提供一个结论性的答案。

我怀疑您正在使用核心模板节点来生成该消息有效负载。 Template 节点使用 mustache 语法,默认情况下会自动转义某些字符以使其成为 HTML 安全的。为了防止 mustache 这样做,您将使用 {{{triple-braces}}}(而不是默认的 {{double-brace}}。这在模板节点的侧边栏帮助中进行了描述。

【讨论】:

    【解决方案2】:

    如果代码在浏览器中运行,您可以使用此函数将 HTML 符号转换为实际字符:

    function decodeHtmlChars(instr) {
        const textarea = document.createElement('textarea')
        textarea.innerHTML = instr;
        return textarea.value;
    }
    
    events = decondeHtmlChars(events[0][0])
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-09
      • 2022-11-11
      • 2021-11-22
      • 2018-02-21
      • 1970-01-01
      • 2019-12-16
      • 2023-04-07
      相关资源
      最近更新 更多