我正在使用TypeScript制作服务器,我的角度应用程序可以连接到该服务器,但是尝试运行它时出现以下错误:(PS我尝试对AddressInfo使用解构,但是Node.js或TS与ES6尚不兼容特征)
const {address, port} = server.address() as AddressInfo;
^^
SyntaxError: Unexpected identifier
at Module._compile (internal/modules/cjs/loader.js:720:23)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
at Module.load (internal/modules/cjs/loader.js:643:32)
at Function.Module._load (internal/modules/cjs/loader.js:556:12)
at Function.Module.runMain (internal/modules/cjs/loader.js:839:10)
at internal/main/run_main_module.js:17:11
下面的代码:
const express = require('express');
const AddressInfo = require('AddressInfo');
const app = express();
app.get('/', (req, res) => res.send('Hello from Express'));
app.get('/products', (req, res) => res.send('Got a request for products'));
app.get('/reviews', (req, res) => res.send('Got a request for reviews'));
const server = app.listen(8000, "localhost", () => {
const {address, port} = server.address() as AddressInfo;
console.log(`Listening on ${address}:${port}`);
});
我正在使用TypeScript制作服务器
更准确地说,您正在使用NodeJS制作服务器。节点仅本机支持JavaScript。此处的快速解决方案是删除,as AddressInfo
因为这是TypeScript语法,而不是JavaScript。
如果您确实要使用TypeScript而不是JavaScript,则需要将.js
文件重命名.ts
并配置NodeJS以使用TypeScript。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句