我是新的类型脚本,我试图将类型脚本文件转换为JavaScript文件,通过运行命令tsc filename.ts
.但显示错误。
C:\Program Files (x86)\Nodist\bin\node_modules\typescript\lib\tsc.js:93
for (let i = startIndex ?? 0; i < array.length; i++) {
^
SyntaxError: Unexpected token ?
at Module._compile (internal/modules/cjs/loader.js:749:23)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:816:10)
at Module.load (internal/modules/cjs/loader.js:672:32)
at tryModuleLoad (internal/modules/cjs/loader.js:612:12)
at Function.Module._load (internal/modules/cjs/loader.js:604:3)
at Module.require (internal/modules/cjs/loader.js:711:19)
at require (internal/modules/cjs/helpers.js:14:16)
at Object.<anonymous> (C:\Program Files (x86)\Nodist\bin\node_modules\typescript\bin\tsc:2:1)
at Module._compile (internal/modules/cjs/loader.js:805:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:816:10)
字符串
我尝试将node安装到它的最新版本。
4条答案
按热度按时间nuypyhwy1#
我在
TypeScript
5.1.6和Node 12.x版本中遇到了同样的问题。由于这种组合,你得到了这个问题。我把我的
TypeScript
降级到4.9.5,它对我很好。请查看下面的图片以供参考:
https://www.typescriptlang.org/docs/handbook/release-notes/typescript-5-1.html
的数据
ljo96ir52#
实际上,Veerendra是正确的,typescript现在要求节点14.17作为“最低运行时要求”。我刚刚做的是卸载
nodejs
,npm
,typescript
,...我从我的系统(Ubuntu 22)中完全下载了nodejs,然后使用nvm安装了最新的LTS版本。直接转到自述文件中的这一行,查看安装nvm
的命令。使用
nvm
,您可以选择要安装的任何版本的nodejs
。安装特定版本的nodejs
也会得到npm
。我选择安装v18.17.0
,字符串
然后像往常一样使用
npm
安装软件包,现在命令tsc
工作正常。velaa5lx3#
我遇到了同样的问题,尽管使用了链接https://devblogs.microsoft.com/typescript/announcing-typescript-5-1/#es2020-and-node-js-14-17-as-minimum-runtime-requirements中建议的node v18
我把我的 typescript 版本从5.1降到了5,它工作了。
7y4bm7vi4#
我认为如果使用
startIndex
或0
,则startIndex
可以是undefined
/null
,因此将??
改为||