2016-03-17 224 views
0

我有以下内容的tsconfig.json文件:TS6059在忽略目录

{"compilerOptions": {                   
    "module": "commonjs",                  
    "noImplicitAny": false,                 
    "removeComments": true,                 
    "preserveConstEnums": true,                
    "outDir": "./target/src/",                
    "rootDir": "./src/main/webapp/",               
    "sourceMap": true,                  
    "experimentalDecorators": true               
},                       
    "exclude": ["node_modules", "target"] 
} 

当我运行TSC我得到的错误:

error TS6059: File '../node_modules/ng2-select/components/ng2-select-config.ts' is not under 'rootDir' 'main/webapp'. 'rootDir' is expected to contain all source files.

的罪魁祸首似乎是,当我尝试加载ng2选择在一个文件中:

import {Component} from 'angular2/core'; 
import {select} from 'ng2-select'; 

如果我没有第二次导入运行tsc就没事了。如果我添加第二个我得到那个错误。

任何想法,为什么它试图编译ng2-select,即使它应该被忽略?

谢谢!

+0

看看这个[question](http://stackoverflow.com/questions/35648347/importing-ng2-bootstrap-changes-my-tsc-output-directory-structure)与你的问题有关正在尝试编译ng2- *。 –

回答

1

这可能是ng2-select模块的结构或打印机编译器的错误。

该问题是由于.ts.d.ts文件位于您尝试从其加载的模块目录中的相同目录中造成的。这似乎导致打字稿编译器重新编译模块,然后感到困惑,因为它编译了rootDir以外的东西。

我有同样的问题,并有raised it on the module's GitHub repositoryThis answer虽然不够理想,但现在可能会对您有所帮助。希望很快就会有修复。

更新

latest release修复此问题。