Laravel Blade 模板在开发环境中正确编译但在生产环境中未正确编译

问题描述 投票:0回答:1

我有一个 Laravel 项目(最近升级到版本 11),它在我的开发环境中完美运行。 它在我的生产环境中也运行得很好,直到昨天,所有页面都开始生成错误。 两个环境中的 git 存储库是同步的,并且在生产服务器上检出存储库中的当前代码。 每个页面上生成的错误是

Undefined variable $component
。 从登录页面的刀片文件生成的 PHP 文件的开头,在报告的“查看异常”中引用,例如,是

@component('App\View\Components\GuestLayout', 'guest-layout', [])
<?php if (isset($attributes) && $attributes instanceof Illuminate\View\ComponentAttributeBag): ?>
<?php $attributes = $attributes->except(\App\View\Components\GuestLayout::ignoredParameterNames()); ?>
<?php endif; ?>
<?php $component->withAttributes([]); ?>

确实,

$component
没有定义,所以我理解为什么PHP会抱怨。 但我不明白的是,为什么 Laravel 生成的 PHP 文件在我的生产服务器上有此错误(但在我的开发服务器上却没有,即使代码库相同)。

生产服务器上的哪些代码可能会生成此错误?

我尝试清除缓存(

php artisan cache:clear
php artisan view:clear
),但这没有什么区别。

关于我应该如何进行有什么建议吗?

laravel-blade
1个回答
0
投票

我有同样的错误,但就我而言,这是由于从 Laravel 10 到 11 的不完整升级引起的。我创建了一个新的 Laravel 11 项目并更新了我的文件,现在它可以工作了。

© www.soinside.com 2019 - 2024. All rights reserved.