Un kit de démarrage d'application à page unique très avisé, construit sur Vue.js et Laravel.
Ce package contient deux projets distincts pour servir de point de départ à une application à page unique : un projet Vue.js (créé avec le modèle vue-cli + webpack) et un projet Laravel 5.3.
Il ne s'agit pas seulement de projets fraîchement créés, mais d'une application entièrement fonctionnelle qui peut être modifiée et étendue pour devenir votre propre application.
La démo en direct peut être trouvée sur https://spa.codecasts.rocks/.
Assurez-vous d'avoir installé Node et Yarn (dernières versions) ainsi que PHP 7 et MySQL .
Ces commandes téléchargeront le référentiel et le prépareront pour vous.
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
pour installer Laravel et les packages tierstouch database/database.sqlite
pour créer un fichier de base de données videcp .env.example .env
pour configurer l'installationphp artisan key:generate
pour générer une clé unique pour le projetphp artisan jwt:secret
pour générer une clé unique pour le projetphp artisan migrate
pour créer toutes les tablesphp artisan db:seed
pour remplir les tables avec de fausses donnéesphp artisan serve
pour servir l'application sur localhost : 8000 Accédez au dossier du service Web et exécutez le script de test du compositeur
$ composer test
La gestion des erreurs se fait globalement en utilisant les intercepteurs d'Axios. Mais vous pouvez toujours .catch() erreurs dans les composants pour effectuer des actions liées à cette portée. Voir /client/src/plugins/http.js ;
De la même manière, les messages d'erreur résident dans un seul composant (/client/src/modules/general/alerts.vue) et leur visibilité est contrôlée par une propriété Vuex. Donc, pour afficher/masquer les messages, il suffit de diffuser une action Vuex depuis n'importe quel composant ;
Le spinner affiché lors des requêtes du serveur (voir en haut à droite à côté de l'identification de l'utilisateur) est également contrôlé par une propriété Vuex. La procédure pour l'afficher/le masquer est la même que celle décrite au point 2 ci-dessus ;
les itinéraires et les modules Vuex vivent à proximité des modules pour lesquels ils travaillent. Recherchez toujours routes.js et store.js dans un répertoire de module. Voir /client/src/modules/categories ;
Important : le projet Laravel trouvé dans le webservice d'annuaire a été modifié au-delà de l'ajout de routes et de contrôleurs. Par exemple : le webservice/app/Exceptions/Handler.php a été modifié par rapport à sa version originale pour renvoyer toutes les exceptions au client, pas seulement les HttpExceptions. D'autres changements sont également en place. Notre recommandation est donc de toujours utiliser ce projet pour créer le vôtre, au lieu de copier les contrôleurs et les routes vers un nouveau projet.
git checkout -b feature/my-new-feature
git commit -am 'Add some feature'
git push origin feature/my-new-feature
Fábio Vedovelli et contributeurs dévoués.
Sous licence MIT.