【发布时间】:2016-02-09 17:01:12
【问题描述】:
我在节点中使用 express plus ejs 作为视图引擎。我在通过套接字发出消息时遇到问题。我的主文件名
是index.js 并且视图文件在pages/messages 里面,也就是ejs
文件。我正在使用
app.get('/messages/:id', function(req,res) {
res.render('pages/messages');
});
io.sockets.on('connection', function(socket) {
socket.on('chat message', function(msg) { console.log(msg); socket.emit('chat message', msg);
});
});
上面的代码我在 index.js 的主文件中使用,下面的代码作为前端
<script src="/socket.io/socket.io.js"></script>
<script src="http://code.jquery.com/jquery-1.11.1.js"></script>
<script> var socket = io();
$(document).ready(function()
{ $('form').submit(function(e){
alert('1');
e.stopPropagation();
e.preventDefault();
socket.emit('chat message', $('#m').val(), '');
$('#m').val('');
return false; });
socket.on('chat message', function(req, res){
$('#messages').append($('<li>').text(res));
}); });
</script>
<ul id="messages"></ul>
<form action="" >
<input id="m" autocomplete="off" /><button>Send</button>
</form>
发出后 li 包含空数据。
【问题讨论】:
-
请写成更易读的格式。
-
你好阿曼我不能实际上编辑不能给我添加更多格式的权限
-
请检查它现在可读吗?
-
我已进一步编辑。
-
好的,谢谢,请解决我对节点的新问题
标签: node.js sockets express ejs