Laravel 建置 Vue.js 和 Vue Router 的 SPA 網站

在 Ubuntu Server 環境使用 Laravel 的 laravel/ui 套件,建置 Laravel 和 Vue.js 連動 Vue Router,並將 Laravel 所有 routes 指向主要 Component,來完成 Laravel、Vue.js 和 Vue Route 的 SPA 網站。
安裝
laravel/ui 套件
npm
ui 和 Vue.js 套件
這個 laravel/ui 套件有一些有用的 artisan 指令,它能自動建置開始使用 Vue 所需的一切。
Vue Route
安裝 Vue.js 路由套件 Vue Route:
新版本的 Node.js
因 Node.js 會有版本須 >= 12 以上限制,所以這裡安裝較新版本的 Node.js LTS (v14.x) :
Max 額外的依賴項
安裝添加依賴項目,並編譯:
Laravel Vue.js 設定
Vue 的結構就是由各個 Components 組成,因此一開始要在該目錄下建立所需頁面的 Component。
在 resources/js/components/ 建立一個頁面 Home.vue (直接複製原提供的 ExampleComponent.vue 修改即可):
新增 Vue.js 的路由 Vue Route
Component Home.vue 建立完成後,就可以設定 Vue.Router 了,新增 resources/js/router.js:
Vue 主要頁面與 Vue Route 連動
修改 resources/js/app.js,主要是新增 7, 8, 36 行。
建立新的 Vue.js component resources/js/components/Home.vue 檔案後,需要向 Vue 註冊它 (第 26 行)。
Laravel 和 Vue 連動
Vue 都設定完成後,要在 Laravel Blade 頁面引入 Vue.js 物件,新增 resources/views/index.blade.php,作為預設首頁
Laravel routes 指向設定
將 Laravel 所有 routes 都指向上述建立的 index.blade.php,設定 routes/web.php:
測試結果
注意是否己經執行了:
接著只要執行此指令,即可在修改同時即時編譯,並且也能與 Chrome Vue Devtools 連動:

參考

本著作係採用創用 CC 姓名標示-相同方式分享 3.0 台灣 授權條款授權.