我正在尝试使用正在运行的节点13来获取http websocket打字稿服务器,但由于此错误,我无法使服务器启动:
(node:8118) ExperimentalWarning: The ESM module loader is experimental.
internal/modules/esm/default_resolve.js:94
let url = moduleWrapResolve(specifier, parentURL);
^
Error: Cannot find module /Users/mmo19/Documents/projects/planning-poker/http-server imported from /Users/mmo19/Documents/projects/planning-poker/server.ts
我当前正在导入
/Users/mmo19/Documents/projects/planning-poker/http-server
为import app from './http-server';
我尝试使用import * as app from './http-server'
进行导入,但是仍然遇到相同的错误。
我尝试使用--es-module-specifier-resolution=node --experimental-modules
标志运行,但仍然有相同的错误。
An image of my file structure layout
这是我的ts.config:
{
"compilerOptions": {
"outDir": "./dist/",
"sourceMap": true,
"noImplicitAny": true,
"module": "commonjs",
"esModuleInterop": true,
"target": "es6",
"jsx": "react",
}
}
这是我的webpack.config:
'use-strict';
module.exports = {
// Enable sourcemaps for debugging webpack's output.
entry: './src/index.tsx',
devtool: 'source-map',
resolve: {
extensions: ['.ts', '.tsx', '.js'],
modules: ['src', 'node_modules'],
},
module: {
rules: [
{
test: /\.ts(x?)$/,
exclude: /node_modules/,
use: [
{
loader: 'ts-loader',
},
],
},
loader'.
{
enforce: 'pre',
test: /\.js$/,
loader: 'source-map-loader',
},
],
},
externals: {
react: 'React',
'react-dom': 'ReactDOM',
},
};
这是我的package.json:
{
"name": "game-library",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"lint": "eslint '*/**/*.{js,ts,tsx}' --quiet --fix",
"client": "webpack-dev-server --inline --config webpack.config.cjs",
"server": "tsc && node server.ts",
"build": "webpack --config webpack.config.cjs"
},
"keywords": [],
"author": "",
"license": "ISC",
"type": "module",
"dependencies": {
"eslint-config-prettier": "^6.11.0",
"eslint-plugin-prettier": "^3.1.3",
"express": "^4.17.1",
"prettier": "^2.0.5",
"react": "^16.13.1",
"react-dom": "^16.13.1",
"ts-node": "^8.10.1",
"ws": "^7.2.5"
},
"devDependencies": {
"@types/express": "^4.17.6",
"@types/node": "^13.13.2",
"@types/react": "^16.9.34",
"@types/react-dom": "^16.9.6",
"@types/ws": "^7.2.4",
"@typescript-eslint/eslint-plugin": "^2.29.0",
"@typescript-eslint/parser": "^2.29.0",
"eslint": "^6.8.0",
"eslint-plugin-react": "^7.19.0",
"source-map-loader": "^0.2.4",
"ts-loader": "^7.0.1",
"typescript": "^3.8.3",
"webpack": "^4.43.0",
"webpack-cli": "^3.3.11",
"webpack-dev-server": "^3.10.3"
}
}
我已经坚持了几天,只能使用--experimentals-module
标志来解决此问题,这似乎行不通……任何方向将不胜感激!>