Cha*_*qas 2 javascript jquery laravel
如何在JS/Jquery中获取当前用户?我们可以在刀片中做到
{{Auth::user()}} 但它不会在.js文件中工作.
根据标准和大多数javascript模板引擎的工作方式,我更喜欢这样做:
laracasts/utilities使用安装composer require laracasts/utilities在控制器方法中,从返回视图的位置,我会看起来像这样:
public function returnUser(){
$user = Auth::user();
Javascript::put([ 'user.name' => $user->name, 'email' => $user->email ]);
return view('my.user.js');
}
Run Code Online (Sandbox Code Playgroud)在刀片文件中,我只是这样做,
<script>alert("Hi " + user.name + ". Your email is " + user.email)</script>
Run Code Online (Sandbox Code Playgroud)是的,我甚至更喜欢这种方式,@罗宾说.是的,只有一个编辑他的答案,在laravel 5.1,Auth::user()不应该使用.它应该用作auth()->user() //->name or ->email or ->anything.
您必须构建一个 API 并使用 AJAX 获取它。您不能在 javascript 文件中使用刀片。
或者,在<head>您的模板中,您放置。
<script>
var user = {!! json_encode((array)auth()->user()) !!};
</script>
<!-- include your js file here-->
Run Code Online (Sandbox Code Playgroud)
并在您的 js 文件中使用用户 var。
编辑:
根据马克的评论,这确实更干净:
<script>
var user = {!! auth()->user()->toJson() !!};
</script>
<!-- include your js file here-->
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6264 次 |
| 最近记录: |