一尘不染

语法错误:预期的表达式,得到了'<'

node.js

SyntaxError: expected expression, got '<'当我执行以下节点的代码在控制台错误

var express = require('express');
var app = express();
app.all('*', function (req, res) {
  res.sendFile(__dirname+'/index.html') /* <= Where my ng-view is located */
})
var server = app.listen(3000, function () {
  var host = server.address().address
  var port = server.address().port
})

错误:在此处输入图片说明

我正在使用Angular Js,它的文件夹结构像下面这样

在此处输入图片说明

我在这里想念什么?


阅读 389

收藏
2020-07-07

共1个答案

一尘不染

这段代码:

app.all('*', function (req, res) {
  res.sendFile(__dirname+'/index.html') /* <= Where my ng-view is located */
})

告诉Express,无论浏览器要求什么,您的服务器都应返回index.html。因此,当浏览器请求诸如jquery-x.y.z.main.js或的JavaScript文件时angular.min.js,您的服务器返回的内容(index.html以开头)<!DOCTYPE html>,这会导致JavaScript错误。

回调中的代码应查看请求以确定要发回的文件,和/或您应使用带有的其他路径模式app.all。有关详细信息,请参见路由指南

2020-07-07