繁体   English   中英

为什么我无法使用 vue.js 从我的 laravel 数据库中获取数据?

[英]Why can i not get the Data from my laravel database with vue.js?

我有以下问题:我有一个完整设置 laravel 上的一些公司名称的表格,我希望它们通过 vue.js 显示我通过教程完成了以下操作,但它不会按预期工作。 我刚拿到表 Header。 它必须通过 API 解决。

请帮忙:)

欢迎.vue

<script setup>
import { Head, Link } from '@inertiajs/inertia-vue3';
import axios from 'axios';

</script>

<template>
    <Head title="Welcome" />

    <div class="body">
        <FirmenListe :firmas = "firmas"></FirmenListe>
    </div>
</template>
<script>
    import FirmenListe from "./FirmenListe.vue"
    export default {
        name: "App",
        components: {
            FirmenListe
        },
        data(){
            return{
                url: "http://localhost:5174/routes/api.php",
                firmas: []
            };
        },
        methods: {
            getFirma(){
                axios.get(this.url).then(data => {
                    this.firmas = data.data;
                })
            }
        },
        created(){
            this.getFirma();
        }
    }
</script> 

FirmenListe.vue

<template>
    <div class="firma-liste">
        <div class="data">
            <table class="ui celled table">
                <tr>
                    <th>ID</th>
                    <th>Firmenname</th>
                </tr>
                <body>
                    <tr>
                        <Firmen 
                        v-for="firmas in firmas" 
                        :key="firmas.id" 
                        :firmas="firmas"/>
                    </tr>
                </body>
            </table>
        </div>
    </div>
</template>

<script>
    import Firmen from "./Firmen.vue";
    export default {
        name: "FirmenListe",
        components: {
            Firmen
        },
        props: {
            firmas: {
                type: Array
            }
        }
    }
</script>

固件.vue

<template>
    <td>{firmas.id}</td>
    <td>{firmas.firmenname}</td>
</template>

<script>
    export default {
        name: "firmas",
        props: {
            firmas: {
                type: Object
            }
        }
    }
</script>

路线/api.php

<?php

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\FirmaController;
use App\Http\Controllers\MitarbeiterController;

/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| is assigned the "api" middleware group. Enjoy building your API!
|
*/

Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
    return $request->user();
});
Route::resource('firma', 'FirmaController');
Route::resource('mitarbeiter', 'MitarbeiterController');

你叫错了路线

尝试这个:

 return{ url: "http://localhost:5174/api/firma", firmas: [] }; },

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM