2017-07-12 6 views
-1

Wie kann ich die Route meiner laravel web.php ('test.create') in der Vue-Komponente verwenden? Hier ist der web.php:Laravel und Vue JS Route

Route::resource('/test', 'TestController');

Aber ich möchte die URL über die Route gelangen ('test.create') und in die <form> in meinem Vue-Komponente hinzufügen. Hier ist der Vue-Komponente:

<template> 
 
    <div id="app"> 
 
    <form action="{{route('test.create')}}" method="POST"> 
 
     <div class="form-group"> 
 
     <label for="name">Name</label> 
 
     <input type="text" id="name" class="form-control"> 
 
     </div> 
 
     <div class="form-group"> 
 
     <label for="location">Location</label> 
 
     <input type="text" id="location" class="form-control"> 
 
     </div> 
 
     <div class="form-group"> 
 
     <label for="age">Age</label> 
 
     <input type="number" id="age" class="form-control"> 
 
     </div> 
 
     <div class="form-group"> 
 
     <input type="submit" class="btn btn-default"> 
 
     </div> 
 
    </form> 
 
    </div> 
 
</template> 
 

 
<script> 
 
export default { 
 
    name: 'create', 
 
    data: function(){ 
 
    return { 
 
     msg: '', 
 
    } 
 
    }, 
 
} 
 
</script>

+0

prüfen verwenden diese Antwort https://stackoverflow.com/a/39714705/5350773 –

+0

Die Frage ist ein wenig unklar, was genau ist das Problem, das Sie gerade laufen? –

Antwort

0

Sie nicht route() zugreifen kann, ist es ein Laravel helper function es nur innerhalb

/resources/views/

0

route('test.create') funktioniert, ist, eine Laravel-Funktion, es geht funktioniert nicht von einer vue-komponente/javascript. Sie müssten den zurückgegebenen Wert über das DOM (in Ihren Template/Blade-PHP-Dateien) an die Vue-Komponente übergeben.

zB:

in Ihrem view.blade.php:

<your-component create-url="{{route('test.create')}}"></your-component> 

in Ihrem Component.vue:

props: ['createUrl'] 

dann können Sie

<form action="{{createUrl}}" method="POST">