在生产环境中找不到组件的类或视图(&Q) [英] Laravel "Unable to locate a class or view for component" in production environment

查看:17
本文介绍了在生产环境中找不到组件的类或视图(&Q)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在本地的Mac上开发。最新版本的Big Sur。

今天,我去通过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)

在我的应用程序中; appViewComponentsLayoutsApp.php 它看起来像这样;

<?php

namespace AppViewComponentsLayouts;

use IlluminateViewComponent;

class App extends Component
{
    public function render()
    {
        return view('layouts.app');
    }
}

那么我也有; resourcesviewslayoutsapp.blade.php

<x-layouts.base>
<!-- contents -->
</x-layouts.base>

(基本也差不多)

在Mac上运行完美。一旦我将其部署到Ubuntu上,我就收到上面的错误消息:无法找到具有这些名称的类或视图。

谁能指导我如何解决这个问题,因为到目前为止我完全不知道,尽管知道区分大小写可能是与其他问题有关的问题,但我找不到任何实际的解决方案或方法来解决这个问题。

推荐答案

我遇到了同样的问题。多亏了你的问题,我才知道如何解决它:d

在我的例子中,为了更好地组织,我在另一个文件夹中创建了一个组件:

$ php artisan make:component Tutorial/channelName/Alert

因此它在以下目录中创建了view组件:

views/components/tutorial/channel-name/alert.blade.php

现在,要调用组件,您可以这样做:

<x-tutorial.channelName.alert />

差不多就是这样。

这篇关于在生产环境中找不到组件的类或视图(&Q)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆