php - Laravel在生产环境中“无法找到组件的类或视图”
问题描述
我在本地 Mac 上开发。大苏尔的最新版本。
今天我通过 Forge 通过 Ubuntu 服务器将我的应用程序部署到生产环境中,遇到了一个我以前从未见过的错误,并且无法在线找到答案。我可以看到很多人在抱怨它,但是任何人在其他答案上所说的都是链接到没有解决方案甚至没有真正解释的问题,所以这就是我问一个新问题的原因。
确切的错误是这样的;
Unable to locate a class or view for component [layouts.base]. (View: /home/forge/default/releases/20201204084441/resources/views/layouts/app.blade.php)
在我的应用程序中,我有;
app\View\Components\Layouts\App.php
看起来像这样;
<?php
namespace App\View\Components\Layouts;
use Illuminate\View\Component;
class App extends Component
{
public function render()
{
return view('layouts.app');
}
}
然后我也有;
resources\views\layouts\app.blade.php
<x-layouts.base>
<!-- contents -->
</x-layouts.base>
(对于基础也几乎相同)
在 Mac 上完美运行。一旦我在 Ubuntu 上部署它,我就会收到上面的错误,即“无法找到具有这些名称的类或视图”。
有人可以指导我如何解决这个问题,因为到目前为止我完全不知道,尽管知道区分大小写可能是其他问题的问题,但我找不到任何实际的解决方案或解决方法这个。
解决方案
我有同样的问题。感谢您的问题,我可以找到解决方法:D
就我而言,为了更好地组织,我在另一个文件夹中创建了一个组件:
$ php artisan make:component Tutorial/channelName/Alert
因此它在以下目录中创建了视图组件:
views/components/tutorial/channel-name/alert.blade.php
现在,要调用您的组件,您可以这样做:
<x-tutorial.channelName.alert />
差不多就是这样。
推荐阅读
- java - java - 如何临时初始化一个对象以避免Java中的NullPointerException?
- facebook - 如何使用 facebook 和 google 使用流星进行服务器端登录?
- powershell - 电源外壳。在一个文件中使用组对象
- javascript - Javascript数组排序常规字符串和数字字符串
- spring-boot - 管理用户重定向 Spring Security
- javascript - Wordpress 站点中存在无法访问的 Javascript http://10.165.197.8:9090/tlbsgui/baseline/scg.js
- angular - 我是否设置了其他任何东西来使 Web api 工作?
- google-bigquery - 如何为 BigQuery 数据传输服务定义 TransferConfig
- json - Pyspark:将 JSON 加载到 DataFrame
- typescript - How to call Transaction.update using strongly typed UpdateData type