2017-06-28 84 views
0

我的路線可供...我的變量似乎並沒有在刀片鑑於

Route::get('/test', function() { 

    $word = ['Hello']; 



    return view('test', $word); 
}); 

我的刀片查看...

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <title>Laravel Quickstart - Basic</title> 
    <link href="{{ asset('/css/app.css') }}" rel="stylesheet"/> 
    <link href="{{ asset('/css/Test.css') }}" rel="stylesheet"/> 
    <!-- CSS And JavaScript --> 
</head> 

<body> 

<div class="container"> 
    <nav class="navbar navbar-default"> 
     {{$word}} 
    </nav> 
</div> 



</body> 
</html> 

通過訪問應用程序時,我得到以下埃羅瀏覽器...

(2/2)ErrorException未定義的變量:字(查看: /home/vagrant/Code/Laravel/resources/views/test.blade.php)

當我從刀片視圖中刪除$ word,並替換爲靜態字符串「test」時,它將正確顯示。

不知道爲什麼刀片視圖無法看到$字變量,任何想法的人?

+2

使用這個:''return view('test',['word'=> $ word]);'。現在你可以通過'{{$ word}}來訪問它' –

回答

2

你需要把它恢復到視圖中的兩種方法之一:

return view('test', compact('word')); 

或者

return view('test', ['word' => $word]); 

那麼這兩種方法都將使您能夠使用$字變量從內刀片文件

您可以在此處的文檔中看到此示例:https://laravel.com/docs/5.4/blade#displaying-data

1

改變這一行

return view('test', $word); 

return view('test', compact('word')); 

變量將在您的刀片可用。

1

要完成卡爾的答案,你可以在那裏看到一個例子:https://laravel.com/docs/5.4/views#creating-views

+0

雖然這可能會回答這個問題, [這將是更可取的](http://meta.stackoverflow.com/q/8259)包括 必不可少的部分的答案,並提供參考鏈接。 – Peter