Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.

Guest Book

  1. 답변 감사합니다. 또 질문 드리네요.

    답변 주신대로, path 를 확인해보니 이렇게 확인이 되어 있었습니다.

    echo $PATH
    /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

    /usr/local/bin 을 /Users/melomano/npm/bin 으로 path 수정을 했더니,

    echo $PATH
    /usr/bin:/bin:/usr/sbin:/sbin:/Users/melomano/npm/bin

    이 상태에서 확인해보니,

    bower -v
    env: node: No such file or directory

    라고 나오네요.

    해당 폴더에는 bower 실행 파일이 있습니다.

    제가 잘못 수정한건가요?
    path 수정은 다음 사이트 참조했습니다.

    http://jodieorourke.com/view.php?id=181&blog=news

    1. 아~ 제가 좀 바빠서 답변이 늦었습니다.
      기존에 노드는 /usr/local/bin 에 설치되어 있으니 이는 지우시면 안되고 마지막에 새로 추가해 주셔야 합니다. 기존에 구버전의 npm 모듈들의 path가 어디서 온건인지는 말씀 안해주셔서 모르겠지만 해당 부분이 path 따로 설정은 안되어 있는듯 하니 구버전의 npm 모듈들은 그냥 지워주셔도 될듯합니다.

  2. 안녕하세요.
    궁금한 점이 있어 질문 드립니다.

    NPM 으로 패키지 업데이트 후, 패키지 버전 정보가 최신 버전으로 나타나지 않는 현상이 있습니다.
    혹시 원인을 알 수 있을까요?

    예를 들어, bower 라는 패키지를 업데이트 합니다.

    sudo npm update bower -g

    업데이트 완료 후, 버전 정보를 확인하면 다음과 같습니다.

    bower -v
    1.2.8 (옛날 버전 정보)

    패키지 정보를 NPM 으로 확인하면 다음과 같이 최신 버전으로 설치되었다고 나오네요.

    npm list bower -g
    /Users/melomano/npm/lib
    └── bower@1.3.1

    다른 패키지들도 이와 동일한 현상입니다. phonegap 등등...

    1. 추측할 수밖에 없지만 그런 현상이 발생한다면 npm 설치폴더와 path로 잡혀서 명령어가 실행되는 경로가 다른게 아닐까 합니다. 설정을 바꾸어서 사용하시는것 같은데 주신 내용에 /Users/melomano/npm/lib에 설치가 된걸로 보아 /Users/melomano/npm/bin 폴더에 가시면 각 패키지에 대한 실행파일이 있을겁니다.

      which bower를 하셔서 실행된 bower(1.2.8)이 이 폴더의 bower를 사용하고 있는지 다른 경로에 있는지 확인하시면 될듯합니다. 잘못되어 있으면 path 등록이 잘못되서 그렇습니다. 아마 제 추측이 맞다면 /Users/melomano/npm/bin 아래것을 사용하면 최신버전이 나올것입니다.

  3. 안녕하세요.
    node.js프로그래밍 도서로 공부중인 학생입니다.
    다름 아니라 궁금한게 있어서 그러는데
    ch6 예제에서,

    h3 회원가입
    p 회원에 가입해 주세요.
    form(id='joinForm', method='POST', action='/join')
    label(for='name') 이름 :
    input(type='text', name='name', id='name')
    label(for='email') 이메일 :
    input(type='text', name='email', id='email')
    input(type='submit', value='전송')

    script().
    $(document).ready(function() {
    $('#joinForm').submit(function(e) {
    if ($.trim($('#name').val()) === '' || $.trim($('#email').val()) === '') {
    alert('이름과 이메일을 입력해 주세요.');
    return false;
    }
    });
    });

    위 예제를 치면 페이지에
    ȸ������

    ȸ���� ������ �ּ���.
    위와 같이 한글이 깨져서 나옵니다.

    버전은
    "node": "0.10.26",
    "express": "3.5.1",
    "jade": "1.3.0"
    을 사용하고 있습니다.버전을 다운해서 사용을 하는게 좋을까요? ㅠ

    1. 다른데서는 괜찮은데 6장 예제에서만 한글이 깨지나요? 아마 윈도우를 쓰실꺼라고 생각되는데 파일이 저장 인코딩 방식을 알 수 있을까요? 어떤 에디터를 쓰시는지 모르지만 파일을 세이브할 때 utf-8로 인코딩해서 저장해서 시도해 보세요.(노드 버전의 영향은 아닐것 같습니다.)

  4. 안녕하세요

    Node.js 공부하고 있는 초보 개발자입니다.

    질문이 하나 있어 블로그까지 찾아 왔는데요..

    node.js에서 oracle 모듈을 사용해서 db 연결을 하고 있는데

    아무런 오류 메시지 없이 node가 종료됩니다.

    node에서 oracle 연동이 불가능한 걸까요?

    1. Node.js 에서 오라클을 사용해 보진 않았는데 연결하면 오류메시지도 없이 바로 종료가 되어버리는건가요? 오류메시지가 없는 상황은 원인을 추정할 수 없어서 애매하군요. node.js 에서 uncaughtException이라는게 있는데 여기서 오류를 잡아서 출력해 보시면 오류메시지가 나올것 같습니다. 그렇지 않다면 어디선가 오류를 받아서 출력않하고 있다고 봐야하는데 이부분은 코드에서 찾아보지 않는한 방법이 없고요.

  5. 답변 남겨주셔서 감사합니다..

    node.js 0.10.24
    express 2.5.11
    jade 1.0.1
    을 쓰고있습니다..

    github에 올려두신 예제 그대로 받아서 각 모듈 바로설치만하고 실행한결과인데 저렇게 계속안되네요..

    1. 제가 연말이라 약속때문에 나갔다 와서 내일 말씀해주신대로 확인해 보고 답변드리겠습니다.

    2. 최신 jade 버전과 호환이 안되는 부분이 있었네요.

      https://github.com/outsideris/node.js-programming/commit/8bdd269b39672b3bdb3e560c72dd2f53f719d951

      위의 커밋의 변경사항을 적용해 놓았으니 참고하시면 되겠습니다.
      다른 jade 예제에서도 비슷한 오류가 발생할 것 같은데 나그네님 덕분에 최신버전에서 오류가 있는걸 확인했네요. 빠른 시일내에 최신버전과 다시 테스트해서 github의 예제를 업데이트하도록 하겠습니다.(지금 올려드린 링크는 참고하시라고 해당 예제만 수정한 것입니다.)

  6. outsider 님이 내신책의 예제를 따라하던중
    잘안풀리는 부분이 있어서 이렇게 글남겨봅니다..

    7| script(type='text/javascript')
    8| $(document).ready(function() {
    >> 9| $('form').submit(function(e) {
    10| if ($.trim($('#nickname').val()) === '') {
    11| alert('닉네임을 입력해 주세요.');
    12| return false;

    node app.js 로 실행하게 되면
    위 부분에서

    unexpected token "indent"

    와같은 에러가 나타납니다.. 아무리봐도 들여쓰기문제는 아닌거같은데.. 뭐가문제인지 잘모르겠습니다..

    1. Jade의 들여쓰기 때문에 발생하는 걸로 보이네요...
      Jade가 들여쓰기로 파싱을 하기 때문에 이부분에서 잘못되면 Jade파싱에 오류가 나는데 스트립트까지 섞여서 쓸 경우 헷갈리기도 하고 Jade도 계속 버전업이 되므로 이때문에 발생할 수도 있습니다.

      주신 부분만으로는 정확한 증상을 알기 어려우므로 전체 파일을 보여주시면 어느부분이 잘못되었는지 확인해 보겠습니다. (알려주실때 노드 버전과 jade 버전도 알려주세요.)