繁体   English   中英

(discord.js + document) 用<br>

[英](discord.js + document) Replace new lines with <br>

我正在使用 discord.js 创建一个票务机器人。 使用这个机器人,我正在创建上传到 apache 网络服务器的 HTML 脚本。

我正在尝试用<br>替换新行 (\\n)。 正则表达式是正确的,但 html 文件无法识别<br> -s。

代码:

let descText = document.createTextNode(embed.description.replace(/(?:\r\n|\r|\n)/g, "<br>").replace(/"/g, ""));
descNode.append(descText);

结果: https : //imgur.com/a/MwXRfAe

这是因为createTextNode确实会转义 HTML 字符,因此它会转义您的<br>标签。

您需要找到其他方法,例如使用createElement s ,或暗示更新innerHTML属性:

 let embed = { description: `Title Lorem ipsum dolor sit amet consectetur adipisicing elit. Labore vitae quidem maiores dicta cum? Tempora ex numquam qui rerum, earum maiores cupiditate! Officiis vero, enim fugiat porro architecto quod nam modi quasi natus at dolore deserunt quisquam ducimus. Minima impedit explicabo consequatur sint quibusdam, minus nam asperiores. Ut impedit asperiores quo beatae quidem aspernatur soluta sequi sapiente, sit illo commodi itaque temporibus facere dolorem vero? Explicabo consequatur optio sunt ea illo doloribus? Assumenda cupiditate rem commodi dolores voluptatem sit fuga quam architecto perspiciatis.` } let descText = embed.description.replace(/(?:\\r\\n|\\r|\\n)/g, "<br>").replace(/"/g, "") let descNode = document.createElement('p') descNode.classList.add('embedDesc') descNode.innerHTML = `<p>${descText}</p>` document.querySelector('.embedContainer').appendChild(descNode)
 .embedContainer { border: 2px solid #eee; border-radius: 4px; color: #464646; font-family: sans-serif; margin: 0 auto; max-width: 400px; padding: 0 1rem; }
 <div class="embedContainer"></div>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM