-
카테고리
-
세부 분야
풀스택
-
해결 여부
미해결
질문이요.
19.09.02 22:44 작성 조회수 77
0
router.js 에서요
경매 입찰 라우터에서요,
router.post('/good/:id/bid', isLoggedIn, async (req, res, next) => {
.....
.....
req.app.get('io').to(req.params.id).emit('bid', {
bid: result.bid,
msg: result.msg,
nick: req.user.nick,
});
....
....
}}
이 소켓은, auction.pug 에있는,
socket.on('bid', function (data) {
var div = document.createElement('div');
var span = document.createElement('span');
span.textContent = data.nick + '님: ';
var strong = document.createElement('strong');
strong.textContent = data.bid + '원에 입찰하셨습니다.';
div.appendChild(span);
div.appendChild(strong);
if (data.msg) {
span = document.createElement('span');
span.textContent = '(' + data.msg + ')';
div.appendChild(span);
}
document.querySelector('#bid').appendChild(div);
});
이 이벤트를 발생시키잖아요.
1.
req.app.get('io').to(req.params.id).emit('bid'
이 부분에서, to 특정한 것에 보내는것인데,
.to(req.params.id) 가 어떤식으로 인식을해서 보내지는지 이해가 안가네요
정작 acution.pug 에서는
socket.on('bid', function (data) {
는 id 가 몇인지 구분하는게 없는거 같은데 말이죠??...
2.
라우터 -> socket.js -> auction .pug 로 바로 가는거 맞죠?????
답변을 작성해보세요.
0
조현영
지식공유자2019.09.03
action.pug는 프론트에서 실행됩니다. 그리고 프론트에서 처음 소켓 연결 시도할 때 특정 방에 join하고요. 그 후req.params.id(방 아이디)로 emit하면 자동으로 보내집니다.
socket.js는 거치지 않습니다.
답변 1