未定义变量 $names
Undefined variable $names
blade 文件的其余部分正在从控制器中读取值。 ..layout/app.blade 文件从 ..Layout/App.php.
获取未定义的变量 $names
下面是我的App.php。我试过 dd($names) 似乎没有达到 App.php。
<?php
namespace App\Http\Livewire\Layouts;
use Livewire\Component;
class App extends Component
{
public $names ="Alex Boey";
public function mount(){
dd($this->names);
}
public function render()
{
return view('livewire.layouts.app');
}
}
app.blade.php
<head>
@livewireStyles
</head>
<body>
<div>{{$names}}</div>
{{ $slot }}
@livewireScripts
</body>
View Image to see the files on IDE
一个 Livewire 组件只能有一个 single root element。您正在使用 Livewire 在完整的应用程序视图中加载。那根本行不通。
lostika 已经提供了您要找的答案;
将 app.blade 中的 <div>{{$names}}</div>
替换为 <livewire:layouts.app/>
,然后在 Livewire 组件的视图中:
<div>
{{$names}}
</div>
如果您发布的 app.blade 与您的 Livewire 组件的视图相同,那么您需要将其移动到一个单独的 non-Livewire 位置。
blade 文件的其余部分正在从控制器中读取值。 ..layout/app.blade 文件从 ..Layout/App.php.
获取未定义的变量 $names下面是我的App.php。我试过 dd($names) 似乎没有达到 App.php。
<?php
namespace App\Http\Livewire\Layouts;
use Livewire\Component;
class App extends Component
{
public $names ="Alex Boey";
public function mount(){
dd($this->names);
}
public function render()
{
return view('livewire.layouts.app');
}
}
app.blade.php
<head>
@livewireStyles
</head>
<body>
<div>{{$names}}</div>
{{ $slot }}
@livewireScripts
</body>
View Image to see the files on IDE
一个 Livewire 组件只能有一个 single root element。您正在使用 Livewire 在完整的应用程序视图中加载。那根本行不通。
lostika 已经提供了您要找的答案;
将 app.blade 中的 <div>{{$names}}</div>
替换为 <livewire:layouts.app/>
,然后在 Livewire 组件的视图中:
<div>
{{$names}}
</div>
如果您发布的 app.blade 与您的 Livewire 组件的视图相同,那么您需要将其移动到一个单独的 non-Livewire 位置。