我们正在使用Visual Studio 2017
并且有两个单独的Web项目,这些项目应该共享React
中编写的一些TypeScript
组件。还可以存在共享的JavaScript
个文件和CSS
个文件。为此,我们在Visual Studio中创建了一个Shared Project
。
What is the difference between a Shared Project and a Class Library in Visual Studio 2015?
现在项目只有一个包含此信息的文件。
export const Types = {
Type1: '1',
Type2: '2',
Type3: '3'
}
为了进行测试,我可以像这样引用它,Visual Studio将找到该文件:
import { Types} from '../../../2/Constants/Types'
然而,当我尝试运行webpack
时,我收到以下错误:
TS6059:File' /2/Constants/Types.ts'不在 ' ROOTDIR' ' / 1&#39 ;. ' ROOTDIR'预计包含所有来源 文件。
答案 0 :(得分:7)
为此,我使用了rootDirs编译器选项,它似乎可以正常工作!
"rootDirs": [
"../some/folder/outside",
"src",
]
答案 1 :(得分:4)
在我的tsconfig.json
中发现了问题。我有以下价值:
"rootDir": ".",
如果我把它改成了它就开始工作了:
"rootDir": "../",
然而,默认值是根据手册:
公共根目录是根据输入文件列表计算的
阅读完之后,我决定完全删除该值,让编译器设置默认值。
https://www.typescriptlang.org/docs/handbook/compiler-options.html