Webpack给了我" Module没有导出的成员......"即使不需要模块,node_modules中的文件也会出错

时间:2016-10-19 12:35:30

标签: typescript webpack webpack-2

我的Webpack有问题。它正确地编译和树震动,但是给了我数百个错误,因为它由于某种原因在node_modules中做了类型定义,即使它不应该,因为我的入口点不需要/导入模块。 / p>

我的webpack.config.js:

const ForkCheckerPlugin = require("awesome-typescript-loader").ForkCheckerPlugin;
const ExtractTextPlugin = require("extract-text-webpack-plugin");
const webpack = require("webpack");

module.exports = {
    entry:
    {
        browser: __dirname + "/source/index.tsx"
    },

    module:
    {
        loaders:
        [
            { test: /(\.ts|\.tsx)$/, loader: "awesome-typescript-loader" },
            { test: /\.css$/, loader: ExtractTextPlugin.extract({ loader: "css-loader?modules" }) },
            { test: /\.png$/, loader: "url-loader" },
            { test: /\.jpg$/, loader: "url-loader" },
            { test: /\.json$/, loader: "json-loader" },
        ]
    },

    plugins:
    [
        new webpack.DefinePlugin({ "process.env": { NODE_ENV: JSON.stringify("production") } }),
        new webpack.optimize.DedupePlugin(),
        new webpack.optimize.UglifyJsPlugin({ compressor: { warnings: false } }),
        new webpack.optimize.CommonsChunkPlugin({ name: "vendor", minChunks: module => /node_modules/.test(module.resource) }),
        new ExtractTextPlugin("browser.css"),
    ],

    output:
    {
        filename: "[name].js",
        chunkFilename: "[name].js",
        path:  __dirname + "/build/browser/"
    }
};

我的入口点(source / index.tsx) - 基本上没什么:

console.log("Test");

它给我的错误(缩短了,它们都是相似的):

ERROR in [default] C:\Users\Tom\VSCodeProjects\personal\webpack-test\node_modules\@types\react-router\lib\match.d.ts:12:15
Module '"C:/Users/Tom/VSCodeProjects/personal/webpack-test/node_modules/history/lib/index"' has no exported member 'History'.

ERROR in [default] C:\Users\Tom\VSCodeProjects\personal\webpack-test\node_modules\@types\react-router\lib\match.d.ts:16:80
Module '"C:/Users/Tom/VSCodeProjects/personal/webpack-test/node_modules/history/lib/index"' has no exported member 'Location'.

ERROR in [default] C:\Users\Tom\VSCodeProjects\personal\webpack-test\node_modules\@types\react-router\lib\useRouterHistory.d.ts:1:9
Module '"C:/Users/Tom/VSCodeProjects/personal/webpack-test/node_modules/history/lib/index"' has no exported member 'History'.

ERROR in [default] C:\Users\Tom\VSCodeProjects\personal\webpack-test\node_modules\@types\react-router\lib\useRouterHistory.d.ts:1:18
Module '"C:/Users/Tom/VSCodeProjects/personal/webpack-test/node_modules/history/lib/index"' has no exported member 'HistoryOptions'.

ERROR in [default] C:\Users\Tom\VSCodeProjects\personal\webpack-test\node_modules\@types\react-router\lib\useRouterHistory.d.ts:1:34
Module '"C:/Users/Tom/VSCodeProjects/personal/webpack-test/node_modules/history/lib/index"' has no exported member 'HistoryQueries'.

ERROR in [default] C:\Users\Tom\VSCodeProjects\personal\webpack-test\node_modules\@types\react-router\lib\useRouterHistory.d.ts:1:50
Module '"C:/Users/Tom/VSCodeProjects/personal/webpack-test/node_modules/history/lib/index"' has no exported member 'CreateHistory'.

ERROR in [default] C:\Users\Tom\VSCodeProjects\personal\webpack-test\node_modules\@types\react-router\lib\useRoutes.d.ts:4:47
Module '"C:/Users/Tom/VSCodeProjects/personal/webpack-test/node_modules/history/lib/index"' has no exported member 'CreateHistory'.

ERROR in [default] C:\Users\Tom\VSCodeProjects\personal\webpack-test\node_modules\@types\react-router\lib\useRoutes.d.ts:4:68
Module '"C:/Users/Tom/VSCodeProjects/personal/webpack-test/node_modules/history/lib/index"' has no exported member 'CreateHistory'.

2 个答案:

答案 0 :(得分:0)

您可以尝试在"exclude": [ "node_modules" ]中添加tsconfig.json

答案 1 :(得分:0)

我的建议是检查您的每个 webpack 加载器,并确保它们不会以某种方式导致这种情况发生。我遇到了类似的问题,我能够通过使用与以前不同的 CSS 加载器 (sass) 来解决它。