Server Side JavaScript

댓글

댓글 본문
작성자
비밀번호
  1. 초보
    app.get('/cart/delete/:id', (req, res) => {
    var id = req.params.id;
    var cart = req.cookies.cart;
    if(cart[id])
    {
    delete cart[id];

    res.cookie('cart', cart);
    res.redirect('/cart');
    }
    });
  2. 코딩하는오징어
    오 좋네요 ㅎㅎ 저는 cart[id] -= 1 로 해서 수량을 빼는 거를 했었는데 reset하는 것도 추가해야겠습니다.
    대화보기
    • 감사합니다 저도 0으로 했는데 안돼서 고민하고 있었는데 덕분에 해결했습니다!!
      대화보기
      • 김말똥
        전 이렇게 해봤습니다.... 쿠키삭제?..라기보다 재정의?...

        app.get('/delete/:id', function(req, res){
        var id = req.params.id;
        var cart = req.cookies.cart;
        var cart_buffer ={};
        for(gid in cart){
        if(id == gid) continue;
        cart_buffer[gid] = cart[gid];
        }
        res.cookie('cart', cart_buffer);
        res.redirect('/cart');
        });
      • ${products[id].title} 부분에서 오류나시는분은 쿠키를 삭제했다 다시 해보세요
        저는 주소창에 cart/3을 입력했다가 데이터가 들어가서 안된거였더라구요
      • 오씨
        컴퓨터 포맷을 하면서 기존 소스를 다시 셋팅해서 개발하던 중에 app_cookie.js 에서
        var output = '';
        for(var name in products){
        output += `<li>${products[name].title}</li>`;
        //console.log(products[name].title);
        }
        그레인트 엑센트 부분에서 에러가 납니다.
        왜 그런지 궁금합니다.
      • 생활코딩짱짱맨
        혼자서 딜리트를 만들어 본 과정이 많은 도움이 되었습니다.

        제가 구상한 코드입니다.

        카트의 아웃풋에

        <li>
        ${products[id].title}
        (${cart[id]})
        <a href="/del/${id}"> del </a>
        </li>`;

        del이라는 부분으로 id로 접근 할 수 있는 html을 짯습니다.

        app.get('/del/:id',function(req,res){
        var id = req.params.id;
        var cart = req.cookies.cart;

        if(!cart){res.send('null')}
        else{
        cart[id] =0;
        res.cookie('cart', cart);
        }
        res.redirect('/products');

        });

        이렇게 지워줬습니다.
      • 군옥수수
        어쩔때는 1이 증가하고 2가 증가하고 주소창에 입력만해도 증가가 되는데 왜이러는거죠? ㅜㅜ redirect에서 문제가 생긴건가요? redirect를 /products로 하면 이런 현상이 안일어나는데 이유가 궁금합니다
        대화보기
        • 군옥수수
          저도 카트에서 주소창에 cart/1 , cart/2 이런식으로 접근하면 2씩 증가가 되던데 왜그런건가요?
        • Boswell
          아 로그를 통해서 확인해보니 주소창에 "cart/1"을 치자마자 카운트 로직이 동작을 하네요. 주소창에 엔터를 치지않아도 통신이 이뤄져서 그런가요?
        • Boswell
          우선 egoing님, 좋은 강의 만들어주셔서 감사합니다.
          그런데 강의 실습을 하던 중에 최초 생성했던 cart 쿠키를 삭제하고 다시 생성하면,
          해당 id의 값이 2만큼 카운트됩니다. 어찌된 영문인지 모르겠네요.
        • rhizomego
          이렇게 해결했네요.

          var id = req.params.id;
          if(req.cookies.cart) {
          if(req.cookies.cart === undefined) {
          var cart = {};
          } else {
          var cart = req.cookies.cart;
          }
          } else {
          var cart = {};
          }
          if(!cart[id]){
          cart[id] = 0;
          }
          cart[id] = parseInt(cart[id])+1;
          res.cookie('cart', cart);
          res.send(cart);
          });
          대화보기
          • rhizomego
            깃 허브에 있는 소스를 그대로 갖다 붙였는데도 결과값은 계속 undefied로 나오는데
            아무도 이런 결과는 안나오는 건가요?

            app.get('/cart/:id', function(req, res){
            var id = req.params.id;
            if(req.cookies.cart) {
            var cart = req.cookies.cart;
            } else {
            var cart = {};
            }
            if(!cart[id]){
            cart[id] = 0;
            }
            cart[id] = parseInt(cart[id])+1;
            res.cookie('cart', cart);
            res.send(cart);
            });
          • 박첩구드
            감사합니다
          • 이정현
            삭제도 구현해 봤는데 잘한건지 모르겠네요ㅋㅋ 수업 잘 보고 있습니다~
            첨엔 undefined 말고 0으로 했다가 ''로도 해봤다가ㅜㅜ
            app.get('/cart/:id/delete', function(req, res){
            var id = req.params.id
            var cart = req.cookies.cart
            cart[id] = undefined;
            res.cookie('cart', cart)
            res.redirect('/cart')
            })
          • 민윤홍
            첫번째 비디오에서 for ... in 구문을 자바스크립트 오브젝트 요소에 쓰면, 순서가 보장되지 않습니다~
          • 51줄을 cart[id]=0;으로 바꿔보세요!
            대화보기
            • 호동
              위 수업을 따라하며 코드를 작성했는데요. 계속 오류가 발생하는데 뭐가 문제인지 모르겠습니다. 올라온 소스코드와는 동일한 것 같은데 어디를 수정해야 하는지 좀 알려주세요.

              아래는 소스코드 입니다.
              http://ideone.com/68jx42
            • INTRO에서 말씀하신 ADD랑 델리키 기능은 강의로 안나와있습니다.
            • 초보웹 개발자
              폭풍 감자님 감사합니다
            • 폭풍감자
              encoding 되어 있는거네요.
              http://meyerweb.com......er/ 이 사이트 가셔서
              cookie의 내용을 복사하신 뒤에 decoding 하시면 되구요.
              javascript Api는 encoding 반대함수를 찾으시면 됩니다.
              대화보기
              • 초보웹 개발자
                app.get('/cart/:id', function(req, res){

                res.cookie('cart', cart);
                Set-Cookie:cart=j%3A%7B%221%22%3A1%2C%225%22%3A1%2C%227%22%3A4%7D; Path=/
                res.send(cart);
                {"1":1,"5":1,"7":4} --> 브라우저 모니터
                //res.redirect('/cart');
                });

                cart=j%3A%7B%221%22%3A1%2C%225%22%3A1%2C%227%22%3A4%7D; 의 내용을
                cart={"1":1,"5":1,"7":4} 이렇게 표현하려면 javascript에서 어찌 처리해야하는지
                <모안이 적용되지 않은 부분입니다.>
                아시는분 계시면 알려주시기 바랍니다.
              버전 관리
              egoing
              현재 버전
              선택 버전
              graphittie 자세히 보기