私はこの問題を解決するために全面的に検索しましたが、運がありませんでした。私は、私は次のエラーを取得しています理由を把握しようとしている:Reactにはエクスポートされたメンバーがありません '小道具'
ERROR in ~/node_modules/@types/react-router/lib/applyRouterMiddleware.d.ts
(4,43): error TS2305: Module ‘”~/node_modules/react/react".export=' has no exported member 'Props'.
がエクスポートされていないプロパティを参照するほとんどのすべての@types定義ファイルに関連するこれらの何百もあります。
ビルドプロセスではwebpackを使用しています。ここでwebpack.config.jsです:
module.exports = {
target: 'node',
devtool: 'source-map',
devServer: { historyApiFallback: true },
context: root(),
entry: './src/index.tsx',
resolve: {
extensions: [ '', '.js', '.ts', '.tsx', '.scss', '.css' ],
root: root('src'),
alias: {
//inject environment variables via aliases
conf: isProd() ? './conf/production.js' : './conf/development.js',
},
},
output: {
filename: 'bundle.js', //the output js file
path: root('dist'), //build directory
libraryTarget: 'umd',
},
externals: {
fs: 'fs',
winston: 'winston',
system: '{}',
file: '{}',
},
module: {
loaders: [
{
test: /\.tsx?$/,
loader: 'ts-loader',
},
{
test: /\.(s)?css$/,
loader: extractCSS.extract('css-loader!postcss-loader'),
},
{
test: /\.json$/,
loader: 'json-loader', //reference by npm module or path to loader file
},
{
test: /\.jpe?g$|\.gif$|\.png$|\.svg$|\.woff$|\.eot$|\.ttf$/,
loader: 'file-loader?name=assets/images/[sha512:hash:base64:7].[ext]',
exclude: root('node_modules'),
},
],
},
plugins: [
extractCSS,
new StaticHTMLPlugin(
'bundle.js',
root('src/Routing.tsx'),
[ '.png', '.gif', '.jpg', '.jpeg', '.css', '.scss' ]
),
],
}
ここpackage.jsonのコピーです:
"dependencies": {},
"devDependencies": {
"@types/history": "^2.0.39",
"@types/node": "^6.0.46",
"@types/react": "^0.14.44",
"@types/react-dom": "^0.14.18",
"@types/react-router": "^2.0.38",
"@types/winston": "0.0.29",
"css-loader": "^0.25.0",
"extract-text-webpack-plugin": "^1.0.1",
"file-loader": "^0.9.0",
"fs": "0.0.1-security",
"history": "^4.3.0",
"json-loader": "^0.5.4",
"postcss-assets": "^4.1.0",
"postcss-assets-rebase": "^0.4.0",
"postcss-cssnext": "^2.8.0",
"postcss-inline-svg": "^2.1.2",
"postcss-loader": "^0.13.0",
"precss": "^1.4.0",
"react": "^15.3.2",
"react-dom": "^15.3.2",
"react-router": "^3.0.0",
"stylelint": "^7.4.0",
"ts-loader": "^0.9",
"tsc": "^1.20150623.0",
"tslint": "^3.15",
"tslint-config-standard": "^1.3.0",
"tslint-eslint-rules": "^1.5.0",
"tslint-loader": "^2.1.5",
"tslint-react": "^1.0.0",
"typescript": "^2.0.3",
"typescript-react-router-static-html-webpack-plugin": "^0.1",
"webpack": "^1.13.2",
"webpack-dev-server": "^1.16.2",
"winston": "^2.2.0"
}
すべてのアイデアは、ここに行くことができるものに?私はReactライブラリそのものにあまり精通していません。私は直接に輸出されているプロパティは表示されませんが、彼らは別の方法で輸出されているかどうかを確認するために非常に深いlibに掘っていない。
React libと@ types/reactタイピングの間に矛盾がある場合、私はこの問題を経験している唯一の人だと私は奇妙に思えます。これが何らかの設定問題であるということに私が傾いている理由です。
私はtsc
でもプロジェクトを実行しました。実際には正しくビルドされているようです。 b/c tscはコンソールに何千ものガベージ・ラインを出力しますが、確かに分かりにくいです。
ありがとうございました。