在angular project中添加node.js服务器会引发错误

在angular project中添加node.js服务器会引发错误,node.js,angular,Node.js,Angular,我有一个角度的应用程序运行良好。接下来,我需要编写一些rest服务,所以我想我将在同一个angular应用程序中创建一个node.js服务器,因为它只是几个API。我在src\server\server.ts创建了一个文件,下面是它的内容- import express from 'express'; const app = express(); const port = 3000; app.get('/', (req, res) => { res.send('The sedulous

我有一个角度的应用程序运行良好。接下来,我需要编写一些rest服务,所以我想我将在同一个angular应用程序中创建一个
node.js
服务器,因为它只是几个API。我在
src\server\server.ts创建了一个文件,下面是它的内容-

import express from 'express';
const app = express();
const port = 3000;
app.get('/', (req, res) => {
  res.send('The sedulous hyena ate the antelope!');
});
app.listen(port, err => {
  if (err) {
    return console.error(err);
  }
  return console.log(`server is listening on ${port}`);
});
我在express上的第1行出错-

import express
Module '"c:/Users/A12345/quiz-master/node_modules/@types/express/index"' can only be default-imported using the 'allowSyntheticDefaultImports' flagts(1259)
index.d.ts(107, 1): This module is declared with using 'export =', and can only be used with a default import when using the 'allowSyntheticDefaultImports' flag.
我不知道是什么原因引起的。以下是我的
package.json
-

{
  "name": "quiz-master",
  "version": "0.0.0",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "server": "tsc && node src/server/server.ts",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "~8.2.14",
    "@angular/common": "~8.2.14",
    "@angular/compiler": "~8.2.14",
    "@angular/core": "~8.2.14",
    "@angular/forms": "~8.2.14",
    "@angular/platform-browser": "~8.2.14",
    "@angular/platform-browser-dynamic": "~8.2.14",
    "@angular/router": "~8.2.14",
    "@fortawesome/fontawesome-free": "^5.12.0",
    "@types/chart.js": "^2.9.5",
    "angular-bootstrap-md": "^8.8.0",
    "animate.css": "^3.7.2",
    "chart.js": "^2.5.0",
    "core-js": "^2.5.4",
    "express": "^4.17.1",
    "hammerjs": "^2.0.8",
    "pg": "^7.14.0",
    "pg-hstore": "^2.3.3",
    "prismjs": "^1.17.1",
    "rxjs": "~6.5.3",
    "sequelize": "^5.21.3",
    "sequelize-typescript": "^1.1.0",
    "tslib": "^1.9.0",
    "zone.js": "~0.9.1"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "~0.803.20",
    "@angular/cli": "~8.3.20",
    "@angular/compiler-cli": "~8.2.14",
    "@angular/language-service": "~8.2.14",
    "@types/express": "^4.17.2",
    "@types/jasmine": "~2.8.8",
    "@types/jasminewd2": "~2.0.3",
    "@types/node": "~8.9.4",
    "codelyzer": "~4.5.0",
    "jasmine-core": "~2.99.1",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~3.1.1",
    "karma-chrome-launcher": "~2.2.0",
    "karma-coverage-istanbul-reporter": "~2.0.1",
    "karma-jasmine": "~1.1.2",
    "karma-jasmine-html-reporter": "^0.2.2",
    "protractor": "~5.4.0",
    "ts-node": "~7.0.0",
    "tslint": "~5.11.0",
    "typescript": "~3.5.3"
  }
}
我参考了以下链接- 我得到了我的答案-


从“express”导入*为express
const express=require('express')

您是否尝试将
allowSyntheticDefaultImports
标志设置为true?否,但我们为什么需要这样做?
此模块是使用“export=”声明的,并且在使用“allowSyntheticDefaultImports”标志时只能与默认导入一起使用。
错误似乎很清楚。是的,它似乎很清楚,但我只是想知道背后的原因。无论如何,我确实尝试过,这就是我得到的-
(函数(导出、要求、模块、文件名、目录名){从“express”导入express;^^^^^^^^^^^^^^语法错误:新脚本中出现意外标识符(vm.js:79:7)
嗯,有人将其标记为否定,而不是帮助。