laravel livewire 数据未以模态显示

Posted

技术标签:

【中文标题】laravel livewire 数据未以模态显示【英文标题】:laravel livewire data not show in modal 【发布时间】:2020-06-21 15:39:22 【问题描述】:

我可以将数据传递给组件,但在 Alpine js 模式下,数据为空。

这是类:

public $code, $products;

    public function getData($id)
    
        $product = Product::find($id);
        $this->code = $product->code;
    

  public function render()
    

        $this->products = Product::latest()->get();

        return view('livewire.cabin');
    

这是组件:

<div x-data="open: false">
    <section>
if I use $code here the code value is shown !!!
<div> $code </div>
        <div class="slideCabin">
            @foreach($products as $product)
                <div>
<img
@click="open = true"
wire:click="getData( $product->id )"
src="/images/allproducts/ $product->cover "
>
                </div>
            @endforeach

        </div>


    </section>


这是由 Alpine js 通过点击标签打开的模态:

    <div id="backmodal" x-show="open">
but, the code value is null:
 <p> $code </p>
</div>

【问题讨论】:

请展示您的完整组件和刀片。它对我来说不够清楚。我现在正在使用 livewire 一段时间。希望能帮到你 我将发布另一个涵盖我的问题的主题。请考虑一下。 确定兄弟.... tkx哥***.com/questions/60650712/… 查看我的答案。 ***.com/a/60666517/10804409 【参考方案1】:

在模态中调用它之前,您需要检查代码值是否已更改。 你得到了 null 值,因为它在分配任何值之前就被调用了。

@if($code)
<p>  $code  </p>
@endif

【讨论】:

【参考方案2】:

php 7.x 风格:

<p>  $code ?? ""  </p>

【讨论】:

【参考方案3】:

要使其工作,您必须添加一些验证规则。 使用“公共函数规则()”选项

【讨论】:

以上是关于laravel livewire 数据未以模态显示的主要内容,如果未能解决你的问题,请参考以下文章

将 MFMailComposeViewController 推送到导航堆栈上?未以模态方式呈现

如何在 Laravel 7 中使用 Livewire 显示存储路径中的图像

Laravel 在模态窗口中加载外部 URL

我正在使用 Laravel:Livewire 星级组件。我想以星星显示总评分

Laravel 和 Livewire:组件更改时如何执行 javascript 函数?

使用分页数据时 Livewire 抛出错误