tsconfig.没有被TypeScript编译器使用



我是TypeScript新手。我试图在WebStorm中设置它的使用。我已经创建了一个tsconfig。Json文件在我的项目的根,并更改了内置的编译器到1.6.2版本。我仍然需要在每个ts文件中包含引用路径。我希望一旦定义了tsconfig,就不再需要这个了。json文件。

我试图隔离这个问题,并在WebStorm之外进行测试。问题依然存在。这是我的设置:我用"npm install -g TypeScript"安装了TypeScript。我创建了一个结构如下的文件夹:

test
  tsconfig.json
  src
     file1.ts
     file2.ts

file2。ts使用在file1.ts中创建的Class。

当我运行"tsc file2. exe"在src文件夹中,我得到一个:

C:datatryouttsconfigsrcfile2.ts(11,20): error TS2095: Could not find symbol 'TodoCtrl'.

我需要做什么才能让编译器自动找到所有ts文件?

file1.ts:

module todos {
    'use strict';
    export class TodoCtrl {
        constructor() { }
        onTodos() {
                console.log('ok');
        }
    }
}

file2.ts:

// does work with ///<reference path='file1.ts' />
module todos {
    'use strict';
    export class DoneCtrl {
        constructor() { }
        onDone() {
            var test = new TodoCtrl();
        }
    }
}
结果:

error TS2095: Could not find symbol 'TodoCtrl'.

我把所有的东西都放在一个拉链里:https://www.dropbox.com/s/o4x52rddanhjqnr/tsconfig.zip?dl=0

运行tsc srcfile2.ts将只使用srcfile2.ts作为输入。

在没有输入文件的目录下运行tsc,使其使用tsconfig.json,并输入该目录及其子目录下所有.ts文件。

至于为什么tsc srcfile2.ts不工作。你的参考资料缺少一个斜杠。

// <reference path='file1.ts' />

应:

/// <reference path='file1.ts' />

我不确定这是否与您的工作相关,但您的zip包含一个空的tsconfig.json。我用一些选项填满了它,并且实际上能够从命令行和编辑器中进行编译。

{
    "compilerOptions": {
        "module": "commonjs",
        "target": "es5",
        "rootDir": ".",
        "outDir": ".",
        "sourceMap": false
    },
    "filesGlob": [
        "./src/*.ts"
    ]
}

相关内容

  • 没有找到相关文章

最新更新