Ein äußerst eigenwilliges Starterkit für Einzelseitenanwendungen, das auf Vue.js und Laravel aufbaut.
Dieses Paket enthält zwei separate Projekte, die als Ausgangspunkt für eine Single Page Application dienen: ein Vue.js-Projekt (erstellt mit vue-cli + Webpack-Vorlage) und ein Laravel 5.3-Projekt.
Es handelt sich nicht nur um frisch erstellte Projekte, sondern um eine voll funktionsfähige Anwendung, die geändert und erweitert werden kann, um Ihre eigene Anwendung zu werden.
Die Live-Demo finden Sie unter https://spa.codecasts.rocks/.
Stellen Sie sicher, dass Sie Node und Yarn (neueste Versionen) sowie PHP 7 und MySQL installiert haben.
Mit diesen Befehlen wird das Repository heruntergeladen und für Sie vorbereitet.
git clone --depth 1 -b master [email protected]:codecasts/spa-starter-kit.git
cd spa-starter-kit
rm -rf ./.git/
git init
git add --all
git commit -m "init"
cd client && yarn && yarn run dev .composer install um Laravel- und Drittanbieterpakete zu installierentouch database/database.sqlite um eine leere Datenbankdatei zu erstellencp .env.example .env um die Installation zu konfigurierenphp artisan key:generate um einen eindeutigen Schlüssel für das Projekt zu generierenphp artisan jwt:secret um einen eindeutigen Schlüssel für das Projekt zu generierenphp artisan migrate um alle Tabellen zu erstellenphp artisan db:seed um die Tabellen mit gefälschten Daten zu füllenphp artisan serve dazu, die Anwendung auf localhost:8000 bereitzustellen Navigieren Sie zum Webservice- Ordner und führen Sie das Composer-Testskript aus
$ composer test Die Fehlerbehandlung erfolgt global durch den Einsatz der Interceptoren von Axios. Sie können jedoch weiterhin .catch()-Fehler innerhalb von Komponenten ausführen, um Aktionen im Zusammenhang mit diesem Bereich auszuführen. Siehe /client/src/plugins/http.js;
Ebenso befinden sich Fehlermeldungen in einer einzigen Komponente (/client/src/modules/general/alerts.vue) und ihre Sichtbarkeit wird durch eine Vuex-Eigenschaft gesteuert. Um Nachrichten ein-/auszublenden, muss lediglich eine Vuex-Aktion aus einer beliebigen Komponente heraus ausgelöst werden.
Der bei Serveranfragen angezeigte Spinner (siehe oben rechts neben der Benutzeridentifizierung) wird ebenfalls von einer Vuex-Eigenschaft gesteuert. Das Verfahren zum Ein-/Ausblenden ist das gleiche wie in Punkt 2 oben beschrieben;
Routen und Vuex-Module befinden sich in der Nähe der Module, für die sie arbeiten. Suchen Sie immer nach „routes.js“ und „store.js“ in einem Modulverzeichnis. Siehe /client/src/modules/categories;
Wichtig : Das im Verzeichnis „Webservice“ gefundene Laravel-Projekt wurde über das Hinzufügen von Routen und Controllern hinaus geändert. Beispiel: Die Datei „webservice/app/Exceptions/Handler.php“ wurde gegenüber der ursprünglichen Version geändert, um alle Ausnahmen an den Client zurückzugeben, nicht nur HttpExceptions. Darüber hinaus gibt es weitere Änderungen. Wir empfehlen daher, dieses Projekt immer zum Erstellen eines eigenen Projekts zu verwenden, anstatt Controller und Routen in ein neues Projekt zu kopieren.
git checkout -b feature/my-new-featuregit commit -am 'Add some feature'git push origin feature/my-new-featureFábio Vedovelli und engagierte Mitwirkende.
Lizenziert unter der MIT-Lizenz.