【发布时间】:2019-07-11 18:10:36
【问题描述】:
我有一个 Laravel 项目,它应该包含不同的 Vue 应用程序。
其中一些应用程序非常复杂(带有自己的组件的独立 app.js 文件)。
Laravel 如何管理不同的 vue 应用,每个应用都有自己的 app.js 文件和组件?
【问题讨论】:
标签: laravel laravel-5 vue.js vuejs2
我有一个 Laravel 项目,它应该包含不同的 Vue 应用程序。
其中一些应用程序非常复杂(带有自己的组件的独立 app.js 文件)。
Laravel 如何管理不同的 vue 应用,每个应用都有自己的 app.js 文件和组件?
【问题讨论】:
标签: laravel laravel-5 vue.js vuejs2
解决此问题的一种方法是将 vue 应用程序编写为单独的项目(仅使用前端技术),使用 RESTful API 与 laravel 连接。
这实际上是简单的micro-services 架构(包括前端和后端代码之间的硬分离)。如果您决定这样做,您将面临CORS 问题(但不用担心 - 您会在互联网上找到许多解决方案,例如this),因为 vue 应用程序将位于与您的 RESTful laravel API 不同的域/子域上。
Laravel 支持创建 restful API controllers - cmd:
php artisan make:controller API/MovieController --api --model=Movie
路由routes/api.php:
Route::group(['prefix'=>'v1'], function() {
Route::apiResource('movies', 'API\MovieController');
...
});
用于api认证很好Laravel Passport(oauth2)
您还应该使用一些现代前端技术,如 webpack、nmp(这里有一些 example,但您可能会发现更好)来构建您单独的 vue 应用程序...长篇大论 - 但这是一个很好的方向 :)
【讨论】: