0
ビデオチャンネルモデルのサブスクリプションシステムをセットアップします。私は私の刃テンプレートにVuejsとlaravel 5.3Laravelは定義されていませんゲストユーザーのみ
を使用し、私は
<script>
window.Laravel = <?php echo json_encode([
'csrfToken' => csrf_token(),
]); ?>
<script>
この
を置く(ユーザーがログインする場合)はすべて、認証モードで正常に動作しますが、ゲストモードで私のvuejsコンポーネントはいけない仕事と私はこれを取得します私のコンソールReferenceError: Laravel is not defined
スクリーンショットで https://image.ibb.co/bPJCWG/laravel_Vuejs_Error_Guest.jpg 加入者は、消えて何も仕事を数える
この私のコード:
コントローラー:
public function show(Request $request, Channel $channel)
{
$response = [
'count' => $channel->subscriptionCount(),
'user_subscribed' => false,
'can_subscribe' => false,
];
if($request->user())
{
$response = array_merge($response, [
'user_subscribed' => $request->user()->isSubscribedTo($channel),
'can_subscribe' => !$request->user()->ownsChannel($channel),
]);
}
return response()->json([
'data' => $response
], 200);
}
SubscribeButton.vueコンポーネント:
<script>
export default {
data() {
return {
//...
}
},
props: {
//...
},
methods: {
getSubscriptionStatus() {
this.$http.get('/subscription/' + this.channelSlug).then((response) => {
this.subscribers = response.body.data.count;
this.userSubscribed = response.body.data.user_subscribed;
this.canSubscribe = response.body.data.can_subscribe;
})
}
},
mounted() {
this.getSubscriptionStatus();
}
}
助けてください!
ありがとうアリは、残念ながら問題を解決しません。ビデオプレーヤーにはvuejsとvideojsが設定されています。ゲストモードで正常に動作します。しかし、購読コンポーネントだけが私にこのエラーを与えます。わかりません –