Uncaught SyntaxError: Unexpected token < jquery.min.js:1

Uncaught SyntaxError: Unexpected token < jquery.min.js:1

我正在尝试将 bower 用于 nodejs 项目并使用它安装 jquery+bootstrap。但我总是得到主题错误。我不知道怎么了。

代码在这里:

jsfiddle.net/valsaven/8d6e03um/

文件夹结构:

聊天:

问题出在您处理请求的后端代码中,而不是在前端。

var app = http.createServer(function(req, res) {
    res.writeHead(200, {
      'Content-type': 'text/html'
    });
    res.end(index);
});

此代码针对所有请求执行,包括 jscss 文件。因此,您将在 js 请求中获得 index.html 的内容。因此,Javascript 引擎在解析包含 html < 标签的文件时显示错误。

可能的解决方案是定义具体的路由。

var http = require('http'),
 fs = require('fs'),
 path = require('path'),
 express= require('express'),
 index = fs.readFileSync(__dirname + '/index.html');

var app = express();
var server = require('http').Server(app);
var io = require('socket.io')(server);

app.use('/bower_components', express.static('bower_components'));

app.get('/', function(req, res){
   res.writeHead(200, {
      'Content-type': 'text/html'
   });
   res.end(index);
});

server.listen(3000, function() {
   console.log('Server listening on port 3000');
});