前言
本文是前端工作坊的教學文件,介紹如何使用 Vue 3 和 Express 實作內容管理系統,並搭配 Firebase 實現持久化和認證。
開啟專案
開啟前端專案。
1 | cd simple-cms-ui |
實作認證模組
Ref: https://firebase.google.com/docs/web/setup?hl=zh-tw#add-sdk-and-initialize
安裝依賴套件。
1 | npm install firebase |
新增 src/firebase/app.js
檔,嘗試註冊一個使用者。
1 | import { initializeApp } from 'firebase/app'; |
執行腳本,確認是否有成功建立連線並且註冊一個使用者。
1 | node src/firebase/auth.js |
建立認證模組
新增 src/firebase/app.js
檔,初始化 Firebase 實例。
1 | import { initializeApp } from 'firebase/app'; |
修改 src/firebase/auth.js
檔,封裝並匯出認證的相關方法。
1 | import { createUserWithEmailAndPassword, getAuth, signInWithEmailAndPassword } from 'firebase/auth'; |
建立 src/firebase/index.js
檔,匯出模組。
1 | export * as auth from './auth'; |
提交修改。
1 | git add . |
實作頁面
註冊頁面
建立 src/views/SignUp.vue
檔。
1 | <script setup> |
登入頁面
建立 src/views/SignIn.vue
檔。
1 | <script setup> |
登出頁面
建立 src/views/SignOut.vue
檔。
1 | <script setup> |
首頁
修改 src/views/HomeView.vue
檔,在登入後的首頁顯示使用者的電子信箱。
1 | <script setup> |
隱藏導覽列
修改 src/components/AppHeader.vue
檔,當使用者還沒有登入的時候,將導覽列隱藏。
1 | <script setup> |
提交修改。
1 | git add . |
建立路由守衛
修改 src/router/index.js
檔,限制特定的路由只能在登入時進入。
1 | import { auth } from '@/firebase'; |
提交修改。
1 | git add . |