我收到此错误:找不到名称“ require”。您是否需要为节点安装类型定义?尝试npm i @types/node
。
问题出在server.ts上,这是我第一次使用Typescript创建服务器文件,因此我所掌握的知识不多</ p>
但是类型/节点已经在package.json中:
{
"name": "client",
"version": "0.1.0",
"private": true,
"dependencies": {
"@carbon/icons-react": "^10.10.2",
"@testing-library/jest-dom": "^4.2.4",
"@testing-library/react": "^9.3.2",
"@testing-library/user-event": "^7.1.2",
"@types/jest": "^24.0.0",
"@types/react-dom": "^16.9.0",
"axios": "^0.19.2",
"body-parser": "^1.19.0",
"carbon-components": "^10.11.2",
"carbon-components-react": "^7.11.3",
"carbon-icons": "^7.0.7",
"chart.js": "^2.9.3",
"express": "^4.17.1",
"express-history-api-fallback": "^2.2.1",
"node-sass": "^4.14.0",
"path": "^0.12.7",
"react": "^16.13.1",
"react-chartjs-2": "^2.9.0",
"react-dom": "^16.13.1",
"react-router-dom": "^5.1.2",
"react-scripts": "3.4.1",
"typescript": "~3.7.2"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
},
"devDependencies": {
"@types/node": "^13.13.5",
"@types/react": "^16.9.34"
}
}
server.ts:
const path = require('path');
const express = require('express');
const cors = require('cors');
const bodyParser = require('body-parser');
const fallback = require('express-history-api-fallback');
const app = express();
答案 0 :(得分:0)
在打字稿中,您应该使用import
语法而不是require
来包含模块。例如:
import path from 'path';
import express from 'express';