【问题标题】:Input Value not working with Livewire wire:model输入值不适用于 Livewire 电线:型号
【发布时间】:2021-01-10 11:47:15
【问题描述】:

我想做的是从数据库中获取一些数据并将其显示在Input Value 字段中,但这里的问题是,当我使用wire:model='some_input_name' 时,该值不会显示。如果我删除 wire:model 它会显示 value

代码:

<div class="form-group">
    <label for="site_name">Site Name</label>
    <input wire:model='site_name' type="text" name="site_name" id="site_name"
          class="form-control"
          placeholder="Site Name" value="{{$settings->site_name}}">
    </div>

这里有什么问题吗??将输入字段与 livewire 组件绑定时显示值的正确方法是什么?

【问题讨论】:

  • 把等于$settings-&gt;site_name$site_name属性值放到组件类中,而不是视图中。
  • 在这里查看视频youtu.be/ZYv9T0O4JOw

标签: laravel-livewire laravel-8 jetstream


【解决方案1】:

&lt;input&gt; 中删除value="{{ $settings-&gt;site_name }}",并在组件的mount() 方法中使用以下代码:

$this->site_name = $settings->site_name;

这将保留双向数据绑定,同时让您设置初始值。

【讨论】:

    【解决方案2】:

    实现这一点的最好方法是在你的组件中设置一个规则数组,比如

    $rules = [
     'settings.site_name' => 'required'
    ];
    

    这会验证您的字段值并允许它们显示。进一步阅读在livewire docs

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-10-03
      • 1970-01-01
      • 2021-01-02
      • 1970-01-01
      • 2020-12-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多