Node.js ts节点:意外令牌';:';
我正在为我的应用程序编写一个后端服务器,并决定将babel nodeexecutor更改为ts node。我在package.json中的命令是:Node.js ts节点:意外令牌';:';,node.js,typescript,ts-node,Node.js,Typescript,Ts Node,我正在为我的应用程序编写一个后端服务器,并决定将babel nodeexecutor更改为ts node。我在package.json中的命令是: "server": "cd server && ts-node --project tsconfig.json -r ts-node/register Server.ts", 但还是会出现同样的错误: > nodejs-server@1.0.0 server D:\Projects\Visual Studio Code\Nod
"server": "cd server && ts-node --project tsconfig.json -r ts-node/register Server.ts",
但还是会出现同样的错误:
> nodejs-server@1.0.0 server D:\Projects\Visual Studio Code\NodeJS Server
> cd server && ts-node --project tsconfig.json -r ts-node/register Server.ts
(node:3824) ExperimentalWarning: The ESM module loader is experimental.
SyntaxError: Unexpected token ':'
at Loader.moduleStrategy (internal/modules/esm/translators.js:83:18)
at link (internal/modules/esm/module_job.js:36:21)
PS D:\Projects\Visual Studio Code\NodeJS Server\server> npx ts-node test.ts
(node:1420) ExperimentalWarning: The ESM module loader is experimental.
SyntaxError: Unexpected token ':'
at Loader.moduleStrategy (internal/modules/esm/translators.js:83:18)
at link (internal/modules/esm/module_job.js:36:21)
我试图编译一个小文件,但编译器不理解typescript
测试。ts:
var test: string = 'Hello!';
console.log(test);
{
"compilerOptions": {
"target": "ES6",
"moduleResolution": "Node",
"traceResolution": false,
"allowJs": false,
"esModuleInterop": true,
"declaration": false,
"noResolve": false,
"noImplicitAny": false,
"removeComments": true,
"strictNullChecks": false,
"sourceMap": false,
"skipLibCheck": true,
"resolveJsonModule": true,
"typeRoots": [
"custom_typings",
"node_modules/@types",
],
},
"include": [
"client",
"server",
],
"exclude": [
"node_modules",
"client/bundle.js"
]
}
{
"extends": "../tsconfig.json",
"compilerOptions": {
"module": "CommonJS",
"jsx": "preserve",
"noEmit": true,
"baseUrl": "../",
"paths": {
"*": ["node_modules/*"],
"@server/*": ["server/*"],
"@client/*": ["client/*"],
"@routes/*": ["server/routes/*"],
"@public/*": ["public/*"],
"@secure/*": ["secure/*"],
"@utils/*": ["utils/*"],
},
},
"include": ["**/*"]
}
我得到了同样的错误:
> nodejs-server@1.0.0 server D:\Projects\Visual Studio Code\NodeJS Server
> cd server && ts-node --project tsconfig.json -r ts-node/register Server.ts
(node:3824) ExperimentalWarning: The ESM module loader is experimental.
SyntaxError: Unexpected token ':'
at Loader.moduleStrategy (internal/modules/esm/translators.js:83:18)
at link (internal/modules/esm/module_job.js:36:21)
PS D:\Projects\Visual Studio Code\NodeJS Server\server> npx ts-node test.ts
(node:1420) ExperimentalWarning: The ESM module loader is experimental.
SyntaxError: Unexpected token ':'
at Loader.moduleStrategy (internal/modules/esm/translators.js:83:18)
at link (internal/modules/esm/module_job.js:36:21)
我已经重新安装了ts node和typescript模块
Roottsconfig.json:
var test: string = 'Hello!';
console.log(test);
{
"compilerOptions": {
"target": "ES6",
"moduleResolution": "Node",
"traceResolution": false,
"allowJs": false,
"esModuleInterop": true,
"declaration": false,
"noResolve": false,
"noImplicitAny": false,
"removeComments": true,
"strictNullChecks": false,
"sourceMap": false,
"skipLibCheck": true,
"resolveJsonModule": true,
"typeRoots": [
"custom_typings",
"node_modules/@types",
],
},
"include": [
"client",
"server",
],
"exclude": [
"node_modules",
"client/bundle.js"
]
}
{
"extends": "../tsconfig.json",
"compilerOptions": {
"module": "CommonJS",
"jsx": "preserve",
"noEmit": true,
"baseUrl": "../",
"paths": {
"*": ["node_modules/*"],
"@server/*": ["server/*"],
"@client/*": ["client/*"],
"@routes/*": ["server/routes/*"],
"@public/*": ["public/*"],
"@secure/*": ["secure/*"],
"@utils/*": ["utils/*"],
},
},
"include": ["**/*"]
}
服务器/tsconfig.json:
var test: string = 'Hello!';
console.log(test);
{
"compilerOptions": {
"target": "ES6",
"moduleResolution": "Node",
"traceResolution": false,
"allowJs": false,
"esModuleInterop": true,
"declaration": false,
"noResolve": false,
"noImplicitAny": false,
"removeComments": true,
"strictNullChecks": false,
"sourceMap": false,
"skipLibCheck": true,
"resolveJsonModule": true,
"typeRoots": [
"custom_typings",
"node_modules/@types",
],
},
"include": [
"client",
"server",
],
"exclude": [
"node_modules",
"client/bundle.js"
]
}
{
"extends": "../tsconfig.json",
"compilerOptions": {
"module": "CommonJS",
"jsx": "preserve",
"noEmit": true,
"baseUrl": "../",
"paths": {
"*": ["node_modules/*"],
"@server/*": ["server/*"],
"@client/*": ["client/*"],
"@routes/*": ["server/routes/*"],
"@public/*": ["public/*"],
"@secure/*": ["secure/*"],
"@utils/*": ["utils/*"],
},
},
"include": ["**/*"]
}
尝试重命名:
Server.js
为Server.ts
找到解决方案。
在项目配置(文件package.json)中,有必要删除模块化工作类型JS
行:“类型”:“模块”,