如果我误解了,请原谅我,但我想如果我在我的项目根目录中使用了tsconfig.json
文件,那么我将不再需要使用任何///<reference path="..." />
标签来使我的代码编译。我错了吗?
例如,我使用AngularJS。我的App.ts
文件看起来像这样:
import SomeModule from './whatever/SomeModule';
angular.module('foo', [SomeModule.name]).run(...);
我的tsconfig.json
文件(部分)看起来像这样:
{
"compileOnSave": false,
"compilerOptions": {
"target": "es5",
"module": "commonjs"
},
"filesGlob": [
"./www/**/*.ts",
"./typings/**/*.ts"
],
"files": [
/* a bunch of files omitted for brevity*/
"./typings/angularjs/angular.d.ts"
],
}
请注意,我已在文件数组中列出了角度定义文件的路径。另请注意,我将compileOnSave
选项设置为false。最后我想使用Browserify来编译和捆绑所有代码。但是现在我只想看看我是否可以使用tsc
进行编译。
但是当我运行tsc App.ts
时,我收到的错误是“#34;找不到姓名&#39; angular&#39;。&#34;在编译代码时如何使TypeScript编译使用angular.d.ts
文件?
答案 0 :(得分:2)
正在运行tsc App.ts
因为正在指定文件而无法正常工作。按照文档中的说明进行操作:
使用tsconfig.json
- 通过在没有输入文件的情况下调用
tsc
,在这种情况下,编译器将从当前目录开始搜索tsconfig.json
文件并继续向上运行父目录链。- 通过调用
tsc
没有输入文件和-project(或只是-p)命令行选项来指定包含tsconfig.json
文件的目录的路径。在命令行中指定输入文件时,将忽略tsconfig.json文件。