Высоко оцененный стартовый набор одностраничных приложений, созданный на основе Vue.js и Laravel.
Этот пакет содержит два отдельных проекта, которые могут служить отправной точкой для одностраничного приложения: проект Vue.js (созданный с помощью шаблона vue-cli + webpack) и проект Laravel 5.3.
Это не просто только что созданные проекты, а полностью работающее приложение, которое можно модифицировать и расширять, чтобы оно стало вашим собственным приложением.
Живую демо-версию можно найти по адресу https://spa.codecasts.rocks/.
Убедитесь, что у вас установлены Node и Yarn (последние версии), а также PHP 7 и MySQL .
Эти команды загрузят репозиторий и подготовят его для вас.
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
для установки Laravel и сторонних пакетов.touch database/database.sqlite
чтобы создать пустой файл базы данных.cp .env.example .env
для настройки установкиphp artisan key:generate
для создания уникального ключа для проектаphp artisan jwt:secret
для создания уникального ключа для проектаphp artisan migrate
для создания всех таблицphp artisan db:seed
для заполнения таблиц поддельными даннымиphp artisan serve
для обслуживания приложения на локальном хосте: 8000 Перейдите в папку веб-сервиса и запустите тестовый скрипт композитора.
$ composer test
Обработка ошибок осуществляется глобально с использованием перехватчиков Axios. Но вы все равно можете использовать ошибки .catch() внутри компонентов для выполнения действий, связанных с этой областью. См. /client/src/plugins/http.js;
Точно так же сообщения об ошибках хранятся в одном компоненте (/client/src/modules/general/alerts.vue), а их видимость контролируется свойством Vuex. Таким образом, чтобы показать/скрыть сообщения, достаточно отправить действие Vuex из любого компонента;
Счетчик, отображаемый во время запросов к серверу (см. верхний правый угол рядом с идентификатором пользователя), также управляется свойством Vuex. Процедура его отображения/скрытия аналогична описанной в пункте 2 выше;
маршруты и модули Vuex располагаются рядом с модулями, с которыми они работают. Всегда ищите Routes.js и store.js внутри каталога модуля. См. /client/src/modules/categories;
Важно : проект Laravel, найденный в каталоге веб-сервиса, был изменен, помимо добавления маршрутов и контроллеров. Например: файл webservice/app/Exceptions/Handler.php был изменен по сравнению с исходной версией, чтобы возвращать клиенту все исключения, а не только HttpExceptions. Имеются и другие изменения. Поэтому мы рекомендуем всегда использовать этот проект для создания своего собственного, а не копировать контроллеры и маршруты в новый проект.
git checkout -b feature/my-new-feature
git commit -am 'Add some feature'
git push origin feature/my-new-feature
Фабио Ведовелли и преданные авторы.
Лицензировано по лицензии MIT.