laravel i elementy vue.js

0

Witam, chciałbym dodać kilka ciekawych funkcji do projektu w laravelu przy użyciu vue.js, są to dopiero moje początki z vue i na początku mam podstawowy problem. Trochę wzoruję się na kursie z YT. W pliku app.blade dodaję link w taki sposób:

<script src="{{ asset('js/app.js') }}"></script>

w pliku komponentów mam komponent: AddToBasket.vue i kod:

<template>
    <div class="">Dodaj</div>
</template>
 
<script>
    export default {
        
    }
</script>

w pliku app.js importuję i rejestruję komponent:

require('./bootstrap');
 
window.Vue = require('vue');
 
import Addtobasket from './components/AddToBasket.vue';
 
 
const app = new Vue({
    el: '#app',
    components:{
        Addtobasket
    }
});

no i teraz według kursu i dokumentacji po dodaniu czegoś takiego:

<Addtobasket></Addtobasket>

w pliku widoku powinienem otrzymać napis "Dodaj" a nie dzieje się kompletnie nic, co robię źle?
Dowiedziałem się że problem leży w kompilacji kodu jednak dalej nie wiem jak to naprawić

0

Teoretycznie możesz do tego podejść w taki sposób (tj. mieć jeden projekt Laravel+Vue), natomiast prościej (zarówno na początku, jak i w dalszym rozwoju aplikacji) mieć dwa osobne projekty.

Tzn. tworzysz osobno backend (jako API w Laraverze) i frontend (jako aplikacja Vue) - możesz wtedy bez problemu wykorzystać vue-cli, co ułatwia start, zwłaszcza jeśli nie miałeś wcześniej styczności z mieszanką Laravel+Vue.

Dodatkowo dochodzą sprawy typu znacznie łatwiejszy setup hot module replacement i innych ciekawych bajerów :-)

0

Na temat odpowiadaj w postach;

A jeśli elementy vue chciałbym wykorzystać tylko na kilku podstronach projektu?

Nie jest to polecana praktyka - raczej działa się na zasadzie all-in (całość w Vue) lub all-out (bez Vue w ogóle).
Mieszanie Blade z Vue powoduje rozsianie widoków między kod PHP (Blade) a JSy (Vue), co na dłuższą metę jedynie utrudnia pracę.

Tym niemniej: jest to możliwe.

Co pokazuje Ci konsola przeglądarki?

0

ok, chcę żeby było to wykonane poprawnie. Czyli tak: cały wygląd projektu tworzę w vue a backend obsługuję w laraverze i łączę się z vue za pomocą API? Jeśli apka jest już wykonana częściowo w Laraverze to dużo zmian będzie potrzeba żeby jej wygląd przenieść do vue? Aaa, i pliki vue umieszczam w katalogu z Laraelem czy w innym dowolnym miejscu?

0

cały wygląd projektu tworzę w vue a backend obsługuję w laraverze i łączę się z vue za pomocą API? J

Tak, dokładnie.

Jeśli apka jest już wykonana częściowo w Laraverze to dużo zmian będzie potrzeba żeby jej wygląd przenieść do vue?

Może tak, może nie.
Nie da się tego stwierdzić ot tak.

pliki vue umieszczam w katalogu z Laraelem czy w innym dowolnym miejscu?

Potraktuj frontend oraz backend jako dwa zupełnie odrębne projekty.

1 użytkowników online, w tym zalogowanych: 0, gości: 1