我正在使用Vuejs作为前端,我只是想从Laravel获取当前登录的用户ID并显示它。我该怎么办?
答案 0 :(得分:6)
其他选择是使用与crsf
令牌相同的方式。
// header.blade.php
<meta name="user-id" content="{{ Auth::user()->id }}">
// main.js
Vue.prototype.$userId = document.querySelector("meta[name='user-id']").getAttribute('content');
// component
mounted() {
console.log(this.$userId)
}
答案 1 :(得分:2)
通过多种方式获取身份验证用户ID read more
Auth::user()->id;
Auth::id();
通过vue js
$http.get('api/user').then(response => {
console.log(response.body);
})
答案 2 :(得分:2)
protected function appendCurrentLeased()
{
$this->fields['current_leased'] = (!empty($this->data['lease_end'])
&& $this->data['lease_end'] != '0000-00-00')
&& (Carbon::parse($this->data['lease_end'])->gte(Carbon::now()))
? 1
: 0;
}
要进行测试,请尝试使用type =“ text”而不是“ hidden”,您会看到它显示了当前ID
答案 3 :(得分:1)
我需要将数据传递到Header组件,所以我想我可以分享自己的操作方式
<fronend-header :current-user="{{ json_encode(['isLoggedIn'=>auth()->check() ? true : false, 'user'=>auth()->check() ? auth()->user() : null]) }}" />
在vuejs方面
<script>
export default {
name: "frontend-header",
props: {
currentUser: {
type: Object,
required: true
}
}
};
</script>
尚未在登录状态下尝试过,但如有需要,我会做任何必要的更改。
答案 4 :(得分:0)
您好,我尝试了上述解决方案,但由于没有登录用户,因此出现错误。 Uncaught TypeError: Cannot read property 'getAttribute' of null
我添加了@else然后工作了。
@if (Auth::check()) <meta name="user_id" content="{{ Auth::user()->id }}" />@else <meta name="user_id" content="0" /> @endif
希望会帮助某人