首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >typescript处理编译错误

typescript处理编译错误
EN

Stack Overflow用户
提问于 2020-02-03 02:20:19
回答 1查看 27关注 0票数 0

我有一个简单的打字程序-

代码语言:javascript
复制
const users = [{ name: "Ahmed" }, { name: "Gemma" }, { name: "Jon" }];

// We're going to look to see if we can find a user named "jon".
const jon = users.find(u => u.name === "jon");

当我编译这个程序时,我得到这个错误-

代码语言:javascript
复制
p2@6190:~/projects/typescript$ tsc functions.ts
functions.ts:4:19 - error TS2339: Property 'find' does not exist on type '{ name: string; }[]'.

4 const jon = users.find(u => u.name === "jon");
                    ~~~~


Found 1 error.

即使有一个错误,我仍然看到输出文件是通过functions.js生成的。

代码语言:javascript
复制
var users = [{ name: "Ahmed" }, { name: "Gemma" }, { name: "Jon" }];
// We're going to look to see if we can find a user named "jon".
var jon = users.find(function (u) { return u.name === "jon"; });

从javascript的角度来看,这是正确的代码。

在我修复所有错误之前,typescript是否应该根本不生成输出?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-03 02:32:36

ES2015最先提供了Array.prototype.find

因此,您需要告诉TypeScript您正在使用ES2015。您可以使用--lib编译器选项:TypeScript doc

您还可以在tsconfig.json中使用"lib“配置,例如:

代码语言:javascript
复制
{
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "strict": true,
    "skipLibCheck": true,
    "lib": ["es2015"]
  }
}

(请考虑查看文档中的每个配置,这样您就可以完全了解编译器被告知要做什么)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60029188

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档