[Nodejs] Express 使用者註冊利用 JWT(jsonwebtoke)驗證 Nodejs 用 Express 框架,使用者註冊 API,利用 JWT 產生令牌驗證使用者 安裝 jsonwebtoken12npm i jsonwebtokennpm run start 使用 JWT在 authController.js 在 signup 時引用 jwt 1const jwt = require('jsonwebtoken') 設定 JWT 環境變數我們在 2021-10-18 nodejs
[Nodejs] bycrptjs 加密密碼 打註冊(signup)API,使用者輸入的密碼,利用 Library bycrptjs 來加密密碼成功畫面如下 安裝會利用到 Mongoose、bycrptjs、validator,安裝後需重啟 Server12npm i brycrptjsnpm run start 建立 UserModel建立 models/userModel.js,並定義 Schema,需要定義的欄位有 name, emai 2021-10-18 nodejs
[Vue] 錯誤 @import directive requires a url or quoted 錯誤 @import directive requires a url or quoted path發生情況在 config.js 引入 scss 檔案 (color.scss) 作為全域使用時,出現 @import directive requires a url or quoted path 錯誤 發生原因 scss 檔案 (color.scss) 裡引入了外部網址1@import url( 2021-10-15 vue
[Nodejs] 重構 Controller try catch 重構在 tourController 裡有許多重複的 code,寫法並不清晰目標:寫下將以下的 code 重構,變得易懂 tourController.js123456789101112131415161718exports.createTour = async (req, res) => { try { const newTour = await Tour.cr 2021-10-14 nodejs
[Nodejs] ES6 class 重構擴展 Error 類 AppError 當 Error 發生時,通常會拋出一個 Error 物件,也可以看成是一個 Error 原型筆記利用 ES6 語法 Class,建立一個 AppError 類,並繼承 Error,重構 app.js Class對於 Class 並沒有很熟悉,這裡寫下 Class 基本概念,建議可以到阮一峰的 ES6 介紹文章,寫得很清楚完整 Class 定義:ES6 語法,實際上就是一個 functionES6 2021-10-14 Nodejs
[Vue] i18n 神器 i18n-ally VS Code 開發一個套件叫 i18n-ally,常常我們需要對照 i18n 翻譯,要另外再開啟 json 檔非常混亂,安裝此套件後就可以輕鬆對照啦,此外還有提供進度表,可以告訴我們各種語言翻譯的進度,非常方便的神器 點擊 VSCode 套件安裝 i18n-ally 編輯 setting.js可用 「cmd+,」,再點開右上角的 A4 檔案 Icon,會開啟 setting.json 檔在最下 2021-10-13 vscode
[Vue] Vxe-Table 保存滾動捲軸的位置 今天要做的需求是,使用者不管點擊上一頁或下一頁,或是點擊頁面上任何連結,再次返回到那一頁,會保留原本瀏覽的位置。也就是說一開始進入 A 頁滑到頁面最尾端,跳轉到 B 頁,再回到 A 頁,我們希望 A頁進入後是在最尾端的位置。 官方文件提供 scrollBehavior 函式來自動記載捲軸滾動的位置,但僅限於點擊瀏覽器按上一頁、下一頁才會有作用。點擊 router-link 並不會有任何作用,con 2021-10-12 vue vxe-table
[Nodejs] 用 Middleware Global 全域處理錯誤 在 Nodejs Express 中用 Middleware 錯誤處理官方提供錯誤處理的函數,參數有 err, req, res, next。我們可以使用 app.use 方式來呼叫 1234567app.use((err, req, res, next) => { console.error('有錯誤') res.status(500).json( 2021-10-09
[Nodejs] Mongoose Virtual Properties [Nodejs] Mongoose Virtual Properties什麼是 Virtual Properties它是 Mongoose 提供的功能之一,Model 可以在 Schema 定義虛擬屬性(Virtual Properties),它並不會被存入資料庫,但是我們可以使用和讀取,這樣做為了可以節省空間 優缺點 優點:節省資料庫空間 缺點:由於Virtual 沒有儲存在資料庫中,因此無法查 2021-06-28
Vue 與 Slot 結合 Vue 與 Slot 結合SlotSlot是什麼?可以讓你插入HTML內容。會使用的時機通常是結構都相同,但是裡面的HTML需要更改,CSS表現方式可能有三四種,這時Slot就可以派上用場了。 用法匿名插槽匿名插槽就是slot不設定name屬性,通常用在屬性較單純,只需要插入一個地方處。他會抓父元件template裡的內容。 子元件1234567<template> <div 2020-02-04 vue