프로그래밍

nodejs 콜백 미쳐버릴것 같다 시발

const http = require('http');
const db = require('mysql');
const template = require('./template.js');
const querystring = require('querystring');
const url = require('url');
const connection = db.createConnection({
 host     : 'localhost',
 user     : '아이디',
 password : '비번',
 database : 'DB명'
});

connection.connect();

const app = http.createServer((req, res) => {
    const _url = req.url;
    const queryData = url.parse(_url, true).query;
    const pathname = url.parse(_url, true).pathname;
    if (queryData.id === undefined) {
    connection.query('SELECT * FROM topic', (error, results) => {
        if (error) {
            throw error;
        }
        const title = 'Board';
     const list = template.list(results);
     const HTML = template.html(title, list);
     res.writeHead(200);
     res.end(HTML);
 });
    } else {
        connection.query(`SELECT * FROM topic`, (error, results) => {
            connection.query(`SELECT * FROM topic WHERE id=${queryData.id}`, (queryDataErr, queryDataresult) => {
                if (error) {
                    throw error;
                }
                 console.log(results);
                 const title = `Board - ${results.title}`;
                 const description = results.description;
                 const HTML = template.html(title, null, description);
                 res.writeHead(200);
                 res.end(HTML);            
            })
        });
    }
});

app.listen(3000);

 

시팔 진짜 간단한 게시판 하나 짜는데도 콜백 존나 많네 

가독성도 짜증나고 윽

Promise쓰면 된다는데 도와주라 ㅠㅠ

13개의 댓글

2019.04.25

Promise 쓰라면 써라 좀 답이있는데 뭐함

0
2019.04.25
@잠적자

어떻게 씀..?

0
2019.04.25

Promise then

async await

0
2019.04.25
@드모사투
0
2019.04.25

const SomfuncPromise =(val) => new Promise((resolve,reject ) => Somefunc(val, (err,data)=>{

if(err) reject(err)

else resolve(data)

})

)

SomeFuncPromise(123).then(data => console.log(data))

0
2019.04.25
@잠적자

와..고맙다..흑흑

nodejs는 다좋은데 콜백이 병신같아

0

mysql 도 체인코드 되는 모듈 있을텐데?

0
2019.04.25

1. promise

2. async /await

아래부턴 비주류 덕후

3. generator function

4. observable

 

비동기를 처리하는 방법들은 위처럼 많으니, 간결한 코드를 써보도록 하자!

0
2019.04.25
@syntaxError

사랑합니다

0
2019.04.26

뭐지는 대충 보이는데 nodejs 어렵네

0
2019.04.26
@세트똥싸개

짜증나는거지 어렵지는 않음.

변수도 const나 let으로 생성하면 되고 돌리기도 쉬움.

0
2019.04.26
@키리모찌

ㅇㅇ

0
2019.05.01

아무렇게나 써도 돌아가지만!

내가 원하는 데로 돌아가지는 않습니다!

0
무분별한 사용은 차단될 수 있습니다.
번호 제목 글쓴이 추천 수 날짜 조회 수
180419 [컴퓨터] CPU 쿨러에서 갑자기 덜덜덜 하고 소음이 존나 크게 나는데 로스앤젤리스요정 1 44 분 전 28
180418 [잡담] 이어폰 추천좀 1 dlatnaks 0 2 시간 전 43
180417 [잡담] 쿨엔 사이트 망해버렸나보다 6 익명36 0 2 시간 전 151
180416 [잡담] obs 사용시 gtx 시리즈랑 rx 시리즈랑 성능 차이 있음?? 21 해물잠봉 0 8 시간 전 148
180415 [컴퓨터] 컴퓨터 첫 on 흙수저 0 10 시간 전 99
180414 [컴퓨터] 이거 나사 드라이버 뭐 사용해야 되나요 4 흙수저 0 10 시간 전 108
180413 [프로그래밍] 반응형 웹페이지가 내가상상한거랑 좀 다르네 3 평택국 0 10 시간 전 218
180412 [컴퓨터] 윈도우 11 정품 구매해버렸다 3 69746974 1 11 시간 전 226
180411 [컴퓨터] 가난뱅이 컴퓨터 자랑 7 69746974 2 13 시간 전 303
180410 [컴퓨터] 고사양 게임 돌리면 컴퓨터가 멈춥니다 ㅠㅠ 21 탱이탱이뭉탱이 1 14 시간 전 177
180409 [컴퓨터] 5600x >5700x3d 하려는데 체크 좀 2 오뜨 0 14 시간 전 160
180408 [잡담] 윈도우 클린설치하다가 메인보드 뻑가나..? 6 꺄꺄룽 0 15 시간 전 128
180407 [컴퓨터] 사촌이 컴터산다고하는디 9 허풍이 0 16 시간 전 218
180406 [컴퓨터] 콤퓨타 글카 보조전원 다껴야대는거야? 7 초아랑모텔감 0 16 시간 전 129
180405 [잡담] 긱바 650m-k랑 애자락 라이트닝중에 어느거사지 15 전기모기채는신이야 0 16 시간 전 48
180404 [컴퓨터] 컴린이 150주고 본체 맞췄는데 괜찮나여 11 녹색너구리 0 16 시간 전 125
180403 [잡담] 듀얼업 모니터 사고싶다 2 김독자 0 19 시간 전 123
180402 [프로그래밍] 고졸 FE개발자 연봉, 상황에 조언좀.. 14 쾅꿍꿍 0 19 시간 전 358
180401 [모바일] 서피스 프로9 i5 괜찮음? 6 cw 7 0 19 시간 전 90
180400 [모바일] 중국에서 갤24울라리 샀는데 5 너가전부옳아 0 21 시간 전 324