laravel - 在 @if 条件中使用时,Trix 编辑器不显示
问题描述
在 larave8 livewire 我想使用 trix 编辑器在 livewire 组件上创建一个刀片视图 InfoletterCrud 如下
<div class="container ml-auto mr-auto p-10 min-h-screen">
<div class="page-title ">{{ $page_title }}</div>
<div class="button-line flex flex-col">
@if ($isEditMode)
@if ($showMode)
@include('livewire.show-infoletter')
@else
@include('livewire.create-infoletter')
@endif
@else
<div>
<button wire:click="create()" class="button-cancel text-white font-bold py-2 px-4 rounded my-3">Ajouter une info-lettre</button>
</div>
@if (count($infoletters) > 0)
<table class="w-full table-fixed admin-stripped-table">
<thead>
<tr class="w-full">
<th class="w-1/12">Id</th>
<th class="w-10/12">Titre</th>
<th class="w-1/12">Actions</th>
</tr>
</thead>
<tbody>
@foreach ($infoletters as $infoletter)
<tr>
<td>{{ $infoletter->id }}</td>
<td>{{ $infoletter->title }}</td>
<td>
<div style="display:flex">
<button
wire:click="show({{ $infoletter->id }})"
class="fontawesome-icon">
<span data-toggle="tooltip" title="Voir" class="fa fa-paper-plane fa-xs "></span>
</button>
<button
wire:click="edit({{ $infoletter->id }})"
class="fontawesome-icon">
<span data-toggle="tooltip" title="Modifier" class="fa fa-edit fa-xs "></span>
</button>
<button
wire:click="$emit('openModal', 'livewire-modal', {{ json_encode(['type' => 'L\'infolettre', 'ident' => $infoletter->id]) }})"
class="fontawesome-icon">
<span data-toggle="tooltip" title="Supprimer" class=" fa fa-trash fa-xs "></span>
</button>
</div>
</td>
</tr>
@endforeach
</tbody>
</table>,
@else
<p>Il n'y a aucune info-lettre</p>
@endif
@endif
</div>
</div>
当我将带有 @livewire('trix') 的 trix 组件放在 @if (isEditMode) 测试上方时,它会显示出来。但这不是我想要的,因为我不在编辑模式下。
如果我将它放在 livewire.create-infoletter 包含中,它不会出现。即使我将它放在 @if (isEditMode) 测试之后,它也不会出现。
有什么问题
解决方案
您没有显示您的组件以及如何初始化 Trix,所以这只是一个猜测。我假设您正在使用 Alpinejs 执行此操作,并且在 @if 条件执行时,Alpine 已经对其 DOM 进行了更新。尝试使用 $nextTick 调用您的初始化函数 - 请参见此处:https ://alpinejs.dev/magics/nextTick 。
推荐阅读
- azure-cosmosdb - 如何在 Cosmos DB 中拥有全局(跨整个容器)唯一约束?
- javascript - 如何在不使用关键字“any”的情况下修复 Typescript 中错位的类型
- google-apps-script - 错误:无法检索下一个对象:迭代器已到达末尾。createFolder@函数:createFolder.gs:8
- vue.js - 在已编译的 VueJS 应用程序中在运行时获取环境变量
- python - 用于创建故障评估图图表的 Python 代码
- reactjs - 无法识别道具类型
- python - 使用 Selenium 和 Beautiful Soup 单击“下载 csv”按钮
- flutter - flutter_inappwebview本地https连接在flutter应用程序中被拒绝
- r - (R Studio)如何将数据框转换为矩阵?
- ios - 使用 CocoaPods 时如何在 xconfig 文件中定义自定义预处理器宏