我有Cart()
按鈕在頁面的頂部,它存儲和顯示用戶購物車的產品數量。在未登錄的用戶中也可以看到,他們可以將產品放在購物車中。在Laravel 4.2中,這個工作很完美,但我已經遷移到Laravel 5.4,沒有我遇到過這個問題。購物車會話和顯示購物車中的物品數量返回undefined在Laravel
這是函數
protected function setupLayout()
{
$user = self::getCurrentUser();
View::share('user', $user);
// this is the part which cause error
View::share('cartCount', count(Session::get('cart', array())));
}
public static function isLoggedIn()
{
$user = Auth::user();
if ($user !== null) {
return true;
} else {
return false;
}
}
這我有我的觀點
@if(!Auth::check())
<li><a href="{{ URL::to('/cart') }}">Cart ({{ $cartCount }})</a></li>
@else
<li><a href="{{ URL::to('/cart') }}">Cart ({{ $cartCount }})</a></li>
@endif
錯誤
未定義的變量:cartCount
任何我deas爲什麼這個版本可以在4.2版本上運行,但是不能在版本5.4 Laravel上運行?
dd(Session::get('cart', array()))
return Array()
如果購物車中沒有產品,這是正確的。當有產品顯示在陣列中時。
我敢肯定,有產品在購物車,因爲dd(Session::get('cart', array()))
回報
array:2 [▼
2 => array:5 [▶]
227 => array:5 [▶]
]
你在哪裏定義'setupLayout'和'isLoggedIn'? – madpoet
'isLoggedIn'有問題。 'setupLayout'沒有被使用。應該刪除。對不起,它已被刪除 – Ivan
setupLayout沒有被使用?這可能是問題,因爲那是你分享變量的地方:) – madpoet