为什么我需要在Angular 2项目中使用`typings.json`文件?

时间:2016-09-11 04:11:21

标签: json angular typescript typescript-typings

为什么我需要 // Form prefix for complete relative file name char filename[MAXPATH]; strcpy(filename, argv[1]); // append '/' if directory path does not end in '/' if (TBD_code(filename)) { strcat(filename, "/"); } char *end = filename[strlen(filename)]; while ((dirp = readdir(dp)) != NULL ){ printf("%s\n", dirp->d_name); if (findC(dirp->d_name)) { // append filename to prefix strcpy(end, dirp->d_name); fp=fopen(filename, "r"); ... ,如下所示:

typings.json

对于Angular2项目?我有:

  

typings.json 为库提供了额外的定义文件   TypeScript编译器本身无法识别。

作为一个新手,我不清楚。

1 个答案:

答案 0 :(得分:4)

所以,我发现了这个:

任何JavaScript库(例如jQuery,Jasmine测试库和Angular)都会使用TypeScript编译器本身无法识别的功能和语法扩展JavaScript环境。当编译器无法识别某些内容时,会抛出错误

因此,如果我们编写了一个可以在项目中与其他人一起使用的库以及TypeScript,那么TypeScript会抛出错误。要解决它,我们必须在库目录中编写TypeScript type definition files (.d.ts files)

AngularJS以及大多数已经执行此操作的库。但是,像“core-js”和“jasmine”这样的库在其npm包中不包含d.ts文件。幸运的是,他们的作者或社区贡献者为这些库创建了单独的.d.ts文件,并将其发布在众所周知的位置。打字工具可以为您找到并获取这些文件。

因此,我们必须编写typings.json文件以获取正确的类型定义文件,以便顺利运行项目。