Javascript 获得';语法错误';论玉观
我正在尝试一个简单的聊天应用程序,使用简单的jade view引擎和express。当我运行我的应用程序时,我发现下面的视图代码出现语法错误。但事情就这么简单Javascript 获得';语法错误';论玉观,javascript,node.js,express,pug,Javascript,Node.js,Express,Pug,我正在尝试一个简单的聊天应用程序,使用简单的jade view引擎和express。当我运行我的应用程序时,我发现下面的视图代码出现语法错误。但事情就这么简单 extends layout block scripts script(type='text/javascript', src='/socket.io/socket.io.js') script(type='text/javascript') var socket = io.conn
extends layout
block scripts
script(type='text/javascript', src='/socket.io/socket.io.js')
script(type='text/javascript')
var socket = io.connect('http://localhost:8080');
socket.on('chat', function(data) {
document.getElementById('chat').innerHTML = '<p><b>' + data.title + '</b>: ' + data.contents + '</p>';
});
var submitChat = function(form) {
socket.emit('chat', {text: form.chat.value});
return false;
};
block content
div#chat
form(onsubmit='return submitChat(this);')
input#chat(name='chat', type='text')
input(type='submit', value='Send Chat')
扩展布局
块脚本
脚本(type='text/javascript',src='/socket.io/socket.io.js')
脚本(type='text/javascript')
var socket=io.connect('http://localhost:8080');
socket.on('chat',函数(数据){
document.getElementById('chat').innerHTML=''+data.title+':'+data.contents+'';
});
var submitChat=函数(形式){
emit('chat',{text:form.chat.value});
返回false;
};
块内容
聊天室
表单(onsubmit='return submitChat(this);')
输入#chat(name='chat',type='text')
输入(type='submit',value='Send Chat')
我得到了这个错误:
SyntaxError: views/chat.jade:9
7| document.getElementById('chat').innerHTML =
8| '<p><b>' + data.title + '</b>: ' + data.contents + '</p>'; >
9| });
10| var submitChat = function(form) {
11| socket.emit('chat', {text: form.chat.value});
12| return false;
Unexpected token ; at Function (<anonymous>) at assertExpression
SyntaxError:views/chat.jade:9
7 | document.getElementById('chat')。innerHTML=
8 |“”+data.title+:“+data.contents+””>
9| });
10 | var submitChat=函数(形式){
11 | socket.emit('chat',{text:form.chat.value});
12 |返回错误;
意外标记;在assertExpression的函数()处
您似乎错过了一个简单的点,请参见
例如:
script(type='text/javascript')
var socket = io.connect('http://localhost:8080');
将给予
<script type="text/javascript">
<var>socket = io.connect('http://localhost:8080');</var>
</script>
为了在示例中显示差异,上面的代码将给出:
<script type="text/javascript" src="/socket.io/socket.io.js"></script>
<script type="text/javascript">
var socket = io.connect('http://localhost:8080');
</script>
var socket=io.connect('http://localhost:8080');
因此,您的代码应该如下所示:
extends layout
block scripts
script(type='text/javascript', src='/socket.io/socket.io.js')
script(type='text/javascript').
var socket = io.connect('http://localhost:8080');
socket.on('chat', function(data) {
document.getElementById('chat').innerHTML = '<p><b>' + data.title + '</b>: ' + data.contents + '</p>';
});
var submitChat = function(form) {
socket.emit('chat', {text: form.chat.value});
return false;
};
block content
div#chat
form(onsubmit='return submitChat(this);')
input#chat(name='chat', type='text')
input(type='submit', value='Send Chat')
扩展布局
块脚本
脚本(type='text/javascript',src='/socket.io/socket.io.js')
脚本(type='text/javascript')。
var socket=io.connect('http://localhost:8080');
socket.on('chat',函数(数据){
document.getElementById('chat').innerHTML=''+data.title+':'+data.contents+'';
});
var submitChat=函数(形式){
emit('chat',{text:form.chat.value});
返回false;
};
块内容
聊天室
表单(onsubmit='return submitChat(this);')
输入#chat(name='chat',type='text')
输入(type='submit',value='Send Chat')
如果您真的希望有人调试您的代码,请发布您的真实代码……并请正确设置您的问题的格式。form(onsubmit='return submitChat(this)')尝试从此行中删除;否。什么都没有发生。这是有效的语法。我希望我能给出更多放弃投票,非常详细的答案来解释微妙的错误。
extends layout
block scripts
script(type='text/javascript', src='/socket.io/socket.io.js')
script(type='text/javascript').
var socket = io.connect('http://localhost:8080');
socket.on('chat', function(data) {
document.getElementById('chat').innerHTML = '<p><b>' + data.title + '</b>: ' + data.contents + '</p>';
});
var submitChat = function(form) {
socket.emit('chat', {text: form.chat.value});
return false;
};
block content
div#chat
form(onsubmit='return submitChat(this);')
input#chat(name='chat', type='text')
input(type='submit', value='Send Chat')