我试图回应我在Controller中设置的会话的值
public function changeLanguage(Request $request){
if($request->ajax()){
$request->session()->put('locale',$request->locale);
$request->session()->flash('alert-success',('app.Locale_Change_Success'));
}
}
Run Code Online (Sandbox Code Playgroud)
$request->local由ajax提交的值是dr和en.现在我想要在刀片中使用dr和en的值,代码看起来像这样
@if(Session::has('locale','en'))
<link rel="stylesheet" type="text/css" href="css/en.css">
@endif
@if(Session::has('locale','dr'))
<link rel="stylesheet" type="text/css" href="css/dr.css">
@endif
Run Code Online (Sandbox Code Playgroud)
根据Laravel文档,检查它的一种方法可能是:
@if(session()->has('locale'))
<link rel="stylesheet" type="text/css" href="css/{{ session()->get('locale') }}.css">
@endif
Run Code Online (Sandbox Code Playgroud)
这样可以节省重复的代码(<link>标记)并且更易于阅读.它还为您节省了检查将来可能添加的每个可能区域设置的麻烦.