가계부 2(21)
-
20. Node 가계부 만들기 JS 버전 완료 후기
예전에 만든 프로젝트를 2년간 성장하여 리팩토링을 진행 해봤습니다. 2년 전에는 개발을 하면서 못 느낀 감정을 코드를 다시 보니 더럽게? 짜던 코드를 보니 감회가 새롭고 깔끔하게 변경 할 수있어서 그래도 성장을 했구나 싶어 즐거웠습니다. TS 버전, Nest 버전 별로 다시 만들어 제작 해보겠습니다. 지금 만든 프로젝트도 시간이 지나도 더럽게? 느껴지지 않기를 바라며 후기를 마치겠습니다. 감사합니다! JS 버전 코드 확인 : https://github.com/wls0/account_book
2022.05.29 -
19. Node 가계부 만들기 [ 가계부 전송 받은 데이터 유효성 검사 ] - 6
express-validator 사용 방법 : https://crispypotato.tistory.com/212 * accounts.route.js 에서 DayAccountFind는 날짜 형식만 바꿔주면 재사용이 가능하여 데이터 형식을 express-validator의 match로 일, 월, 년 형식을 따로 분리해서 만들었다. accounts.validator.js 작성 //accounts.validator.js const { param, body } = require('express-validator') const Index = param('index').notEmpty().isNumeric() const DateBody = body('date') .notEmpty() .isLength(10) .mat..
2022.05.29 -
18. Node 가계부 만들기 [ 가계부 기능 Service 구현 ] - 5
만든 Repository를 이용하여 서비스 코드 제작 : https://crispypotato.tistory.com/226 JwtPassport 생성 : https://crispypotato.tistory.com/219 JwtPassport 적용 : https://crispypotato.tistory.com/225 require 목록 const httpError = require('http-errors') const { Send } = require('../../lib/lib') const { WriteAccount, SelectAccount, ChangeAccount, RemoveAccount, CashCost, ShinhanCost, SamsungCost, HyundaiCost, WooriCost, ..
2022.05.29 -
17. Node 가계부 만들기 [ 가계부 기능 Repository 구현 ] - 4
카드별 금액 확인 기능에는 일, 월, 년 별로 확인하는 기능이 같은 코드로도 가능해서 Sequlize Op 연산자를 이용해서 날짜가 들어가면 합산 금액이 나오게 사용하도록 만들었다. 날짜 데이터 형식은 YYYY-MM-DD 형식이다 require 목록 - 모델 - sequlize - Op const Accounts = require('../../models/accountlist') const sequelize = require('sequelize') const Op = sequelize.Op 1. 가계부 생성 설명 - 유저 인덱스, 사용 날짜, 큰 카테고리, 작은 카테고리, 사용 카드 종류, 사용 금액을 받아 생성 const WriteAccount = async (data) => { try { const ..
2022.05.29 -
16. Node 가계부 만들기 [ /accounts url passport-jwt 적용 ] - 3
passport-jwt : https://crispypotato.tistory.com/219 지난번 만든 passport-jwt 전략을 /accounts url 전체에 적용 1. app.js에서 JwtPassport 적용 설명 - /accounts URL 이용 시 JwtPassport에서 토큰 값을 확인 - token이 만료, 변조, 해당유저가 없으면 /login/token-fail 로 redirect app.js require('dotenv').config() const express = require('express') const logger = require('morgan') const compression = require('compression') const httpError = require(..
2022.05.28 -
15. Node 가계부 만들기 [ 가계부 기본 연결] - 2
1. accounts.service.js 코드 작성 (Service 코드는 [ ] 포스트에 작성) const httpError = require('http-errors') const { Send } = require('../../lib/lib') // 가계부 생성 const CreateAccount = async (req, res, next) => { } // 가계부 수정 const UpdateAccount = async (req, res, next) => { } // 가계부 삭제 const DeleteAccount = async (req, res, next) => { } // 가계부 금액확인 const DayAccountFind = async (req, res, next) => { } const Car..
2022.05.28