TS踩坑日记 - error TS2584: Cannot find name ‘console‘. Do you need to change your ……

  • 在使用 ts-node 运行 ts 文件时出现问题

  • test.ts文件:

    ts 复制代码
    const arr: Object[] = [{}, 1];
    const arr1: Array<Object> = [{}, 1, 2];
    console.log(arr, arr1);
  • 执行

    • ts-node ./test.ts
  • 报错

    php 复制代码
    error TS2584: Cannot find name 'console'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'.
    
    2   console.log(arr, arr1);
        ~~~~~~~
    
        at createTSError (C:\Users\ASUS\Desktop\crm\ydemo\node_modules\ts-node\src\index.ts:820:12)
        at reportTSError (C:\Users\ASUS\Desktop\crm\ydemo\node_modules\ts-node\src\index.ts:824:19)
        at getOutput (C:\Users\ASUS\Desktop\crm\ydemo\node_modules\ts-node\src\index.ts:1014:36)
        at Object.compile (C:\Users\ASUS\Desktop\crm\ydemo\node_modules\ts-node\src\index.ts:1322:43)       
        at Module.m._compile (C:\Users\ASUS\Desktop\crm\ydemo\node_modules\ts-node\src\index.ts:1454:30)    
        at Module._extensions..js (internal/modules/cjs/loader.js:1157:10)
        at Object.require.extensions.<computed> [as .ts] (C:\Users\ASUS\Desktop\crm\ydemo\node_modules\ts-node\src\index.ts:1458:12)
  • 原因console不属于 ECMAScript 标准。DOM里面的 console 是浏览器环境下的(是 window 对象里面的),属于浏览器 BOM APINode 里面的 consoleNodeJS 里面的,由 NodeJS 自己定义的API,两者虽然由同样的功能,但是并不是同一个东西;

  • 解决

    • 安装插件:
      • npm i -D tslib @types/node
    • 该命令是安装 TypScript 助手的运行时库,包含所有 TypeScript 辅助函数;
相关推荐
慧一居士17 小时前
Vite 中配置环境变量方法及完整示例
前端·vue.js
天意pt18 小时前
Idempotency 幂等性 - 点赞和投票功能
前端·javascript·express
weixin_4277716118 小时前
cursor 智能commit
前端
努力的小陈^O^19 小时前
问题:Spring循环依赖问题排查与解决
java·开发语言·前端
徐_三岁19 小时前
127.0.0.1 和 localhost 有什么区别?
前端
沛沛老爹19 小时前
Web开发者转型AI:Agent Skills版本控制与管理实战——从Git到AI技能仓库
java·前端·人工智能·git·架构·rag
yyt36304584119 小时前
TypeScript { [key: string]: unknown } 索引签名写法和 Record 替代
前端·javascript·vue.js·typescript·ecmascript·es6
揽昕20 小时前
判断对象是否含有某个属性
开发语言·前端·javascript
前端小趴菜0521 小时前
TypeScript
前端·typescript
getapi21 小时前
在宝塔面板中部署 Vue 项目打包后的 dist 文件作为前端
前端·javascript·vue.js