无法获取聊天编辑器回复的消息内容

我正在尝试为聊天回复创建类似引用块的样式,并且我已经为聊天消息实现了它,但尚未为 chat-composer-message-details.hbs 实现。

这是 chat-composer-message-details.hbs

<div class="chat-composer-message-details">
  <div class="tc-reply-display">
    {{d-icon icon}}
    {{chat-user-avatar user=message.user}}
    <span class="tc-reply-username">{{message.user.username}}</span>
    <span class="tc-reply-msg">{{replace-emoji message.excerpt}}</span>
  </div>

  {{flat-button
    action=action
    class="cancel-message-action"
    icon="times-circle"
    title=title
  }}
</div>

我正在尝试通过覆盖模板来添加这个:

        <span class="tc-reply-msg">
            {{#if message.uploads.length}}
                <span class="tc-reply-uploads-icon">
                {{d-icon "camera"}}
                </span>
            {{/if}}
            
            {{#if message.cooked}}
                {{replace-emoji message.cooked}}
            {{else}}
                Photo
            {{/if}}
        </span>

然而,message.cookedmessage.uploads.length 似乎都没有找到任何内容,即使我回复的消息包含文本和/或上传。当我将 message.excerpt 替换 message.cooked 时,文本会显示出来,但只是其中的一部分,我希望看到完整的文本。

我不确定如何调试 JSON 对象,如果我输入 {{message}},它只会显示 [object Object]

有什么关于可能发生的情况或如何更好地调试它的想法吗?

1 个赞

你可以写 {{log message}},它会显示在你的浏览器控制台中。

我只想提醒你,聊天正在经历大量变化,所以如果你覆盖了模板,请准备好应对可能出现的故障。

1 个赞

哦,谢谢!

是的,我感谢您的警告。我曾一度停止覆盖它们,但我确实非常非常喜欢类似引用的回复风格,所以又重新开始使用了。我尝试监控提交,看看我覆盖的两个模板是否会发生更改。

编辑:不知何故,{{log message}}chat-composer-message-details.hbschat-message.hbs 的覆盖文件中对我来说没有任何显示。即使我输入 {{log 'this is a log'}} 也没有显示。

您知道为什么 {{log}} 助手似乎不起作用吗?

2 个赞