Visual Studio 2017
を使用しており、React
で記述されたTypeScript
コンポーネントを共有することになっている2つの個別のWebプロジェクトがあります。共有のJavaScript
ファイルとCSS
ファイルも使用できます。このために、Visual StudioでShared Project
を作成しました。
Visual Studio 2015の共有プロジェクトとクラスライブラリの違いは何ですか?
現在、プロジェクトにはこの情報を含む単一のファイルしかありません。
export const Types = {
Type1: '1',
Type2: '2',
Type3: '3'
}
テストのために私はこのようにそれを参照することができ、Visual Studioはファイルを見つけます:
import { Types} from '../../../2/Constants/Types'
しかし、次にwebpack
を実行しようとすると、次のエラーが発生します。
TS6059:ファイル '/2/Constants/Types.ts'は 'rootDir' '/ 1'の下にありません。 「rootDir」には、すべてのソースファイルが含まれている必要があります。
私のtsconfig.json
に問題が見つかりました。私は次の値を持っていました:
"rootDir": ".",
これに変更した場合、機能し始めました:
"rootDir": "../",
しかし、ハンドブックによれば、デフォルト値はこれでした:
共通ルートディレクトリは、入力ファイルのリストから計算されます
これを読んだ後、値を完全に削除し、代わりにコンパイラにデフォルト値を設定させることにしました。
https://www.typescriptlang.org/docs/handbook/compiler-options.html
この目的のために rootDirs コンパイラオプションを使用しましたが、うまくいくようです!
"rootDirs": [
"../some/folder/outside",
"src",
]