在javascript中保留换行符(alpine)

在javascript中保留换行符(alpine),javascript,laravel,alpine.js,Javascript,Laravel,Alpine.js,我正在使用一个功能,如果一个段落的长度超过200个字符,就可以剪切该段落,并添加一个…readmore按钮,单击该按钮时,将显示整个文本 问题在于,文本显示时没有换行符,并且来自数据库的文本被格式化,甚至变量也是通过nl2br从PHP传递的 代码 <p x-data="{ isCollapsed: false, maxLength: 200, originalContent: '', content: '' }" x-init="origina

我正在使用一个功能,如果一个段落的长度超过200个字符,就可以剪切该段落,并添加一个…readmore按钮,单击该按钮时,将显示整个文本

问题在于,文本显示时没有换行符,并且来自数据库的文本被格式化,甚至变量也是通过nl2br从PHP传递的

代码

<p
    x-data="{ isCollapsed: false, maxLength: 200, originalContent: '', content: '' }"
    x-init="originalContent = $el.firstElementChild.textContent.trim(); content = originalContent.slice(0, maxLength)"
    >
        <span x-text="isCollapsed ? originalContent : content">{!! nl2br(e($content->socialCreate->text)) !!}</span>
        <button
            class="font-extrabold"
            @click="isCollapsed = !isCollapsed"
            x-show="originalContent.length > maxLength"
            x-text="isCollapsed ? 'Esconder' : '...Leer mas'"
        ></button>
</p>

{!!nl2br(e($content->socialCreate->text))


如何使用换行符显示文本?

我认为数据库可能会将您的换行符

转换为
\n
。它没有呈现
\n
,因此您可能需要一个
.replace(“\n”,“
”)

抱歉,现在它正确地替换并添加了
标记,但没有换行符。嗯,您可能需要共享您的CSS代码。我只是猜测,我从未使用过你的任何框架,因为同样的事情发生在我身上。