前提・実現したいこと
vue.jsとlaravelで簡易的なシェアアプリを作っています。
メッセージの投稿機能を実装中に以下のエラ〜メッセージが発生しました。
発生している問題・エラーメッセージ
TypeError: Cannot read property 'id' of undefined at a.send (ShareMessage.vue:26) at ne (vue.runtime.esm.js:1854) at HTMLDivElement.n (vue.runtime.esm.js:2179) at HTMLDivElement.Zo.i._wrapper (vue.runtime.esm.js:6917) oe @ vue.runtime.esm.js:1888 re @ vue.runtime.esm.js:1879 ee @ vue.runtime.esm.js:1839 ne @ vue.runtime.esm.js:1862 n @ vue.runtime.esm.js:2179 Zo.i._wrapper @ vue.runtime.esm.js:6917
該当のソースコード
javascript
<script> import axios from "axios"; export default { data() { return { share: "", }; }, methods: { send() { if (this.share === "") { alert("シェアする内容を入力してください"); } else { axios .post("https://gentle-mesa-18924.herokuapp.com/api/shares", { user_id: this.$store.state.user.id, share: this.share, }) .then((response) => { console.log(response); alert("シェアしました"); this.share = ""; this.$router.go({ path: this.$router.currentRoute.path, force: true, }); }); } }, }, }; </script>
php
<?php namespace App\Http\Controllers; use Carbon\Carbon; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; class CommentsController extends Controller { public function post(Request $request) { $now = Carbon::now(); $param = [ 'share_id' => $request->shares_id, 'user_id' => $request->user_id, 'content' => $request->content, 'created_at' => $now, 'updated_at' => $now ]; DB::table('comments')->insert($param); return response()->json([ 'message' => 'Comment created successfully', 'data' => $param ], 200); } }
試したこと
・既存のソースコードがあるのでそのコピペ
・herokuのurlに問題があるのかと思い発行し直した
・再度heroku run php artisan migrateをやってみた
補足情報(FW/ツールのバージョンなど)
Laravel Framework 7.26.1
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/08 11:06