【问题标题】:Laravel Livewire - Best way to use [closed]Laravel Livewire - 最佳使用方式 [关闭]
【发布时间】:2021-12-27 10:10:01
【问题描述】:

我对 Laravel Livewire 感兴趣已经有几天了。但我想知道使用它的最佳方法是什么?

我有一个基于控制器的网站。我现在想在 Livewire 中添加一个论坛。

  1. 我应该传统上在控制器上构建一个论坛,并将 livewire 组件添加到视图中以显示类别、主题、消息吗?跳过传统控制器是不是没有抓住重点和更好?

  2. 如何命名 livewire 组件?

  • livewire/forum/index.blade.php
  • livewire/forum/topics/index.blade.php

//

  • livewire/showForums.blade.php
  • livewire/showForumTopics.blade.php

我想坚持一些命名约定,因为随着项目的发展,我不希望它看起来混乱。未来我会有更多的 livewire 组件。

【问题讨论】:

  • 使用标准的 Laravel 命名约定。那将是你的第一个例子。您可以在有意义的情况下使用整页 Livewire 组件——我倾向于对几乎所有内容使用整页组件,因为它通常比使用控制器更方便。但这是一种偏好。

标签: php laravel laravel-blade naming-conventions laravel-livewire


【解决方案1】:

我把它放在这里,因为它太长了,无法评论。

Livewire 的目的是降低创建交互式界面的知识要求,特别是不必离开 Laravel 的舒适。您如何选择实施您的项目(即在整页组件和单个组件之间进行选择)取决于用例。如果我只想让单个页面元素交互,我不会使用整页组件。

在您的示例中,您可以使用其中任何一个。但是,完整的页面组件可能更有意义,因为您将不再需要触发事件以让其他组件自行更新。

尽可能尝试并遵守现有的 Laravel 命名约定,但最重要的是 - 与您的命名保持一致!

我尽量让我的组件和视图彼此同步,这也是 Livewire 文档中的建议。

app/Http/Livewire/Post/Show.php
resources/views/livewire/post/show.blade.php

在 Laracasts 上查看 building a voting app 与 Livewire 系列。它可能对您的决策有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-25
    • 1970-01-01
    • 2010-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多