#php #reactjs #laravel
#php #reactjs #laravel
Вопрос:
Я использую laravel в своем бэкэнде и react в качестве интерфейса. Когда я пытаюсь передать переменные из моего контроллера в представление с помощью этого:
public function index()
{
return view('welcome')->with('name', 'San Juan Vacation');
}
И я хочу получить его в моем файле приветствия с помощью этого:
<p>{{ $name }}</p>
По какой-то причине это не работает.
В нем указано неопределенная переменная $name. Есть идеи, что может решить эту проблему?
Комментарии:
1. Просто замените эту часть кода -> на([‘name’=> ‘San Juan Vacation’]);
Ответ №1:
Передать переменную Controller
в view
public function index()
{
$name = 'San Juan Vacation';
$color = 'red';
// .....
return view('welcome', compact('name', 'color'));
}
Если вы хотите передать with
, это время :
return view('welcome')->with(['name'=>$name,'color'=>$color]);
Запись в welcome.blade.php
<p>{{ $name }}</p>
Я надеюсь, что это сработает в вашем случае.
Ответ №2:
Чтобы отправить данные из контроллера в представление, используйте этот код: (вы были близки)
public function index()
{
$name = 'San Juan Vacation';
$color = 'red';
// .....
return View::make('welcome', compact('name', 'color'));
}
<p>{{ $name }}</p>
Комментарии:
1. Он по-прежнему говорит, что не определен. Нужно ли мне определять его в конструкторе при загрузке страницы?
2. Вы уверены, что маршрут применяется к правильному контроллеру? вы можете попробовать также php artisan view: очистить
3. @ShehbanPatel У вас установлен маршрут, подобный Route::get(‘/something’, ‘YourController@index’)->name(‘something.index’)
4. Спасибо за это. Похоже, мой маршрут был неправильным, что в первую очередь вызывало эти ошибки.
5. Круто, дайте мне знать, если у вас все еще есть какие-то проблемы!
Ответ №3:
Измените свой код, как показано ниже
public function index()
{
$name = "San Juan Vacation";
return view('welcome')->with(['name'=>$name]);
}
Примечание: Избегайте передачи жестко закодированного значения в блейд-файл, задайте переменную для каждого.