TypeScript问题 - TypeError:无法读取未定义的属性'watchRun'

时间:2018-03-08 04:51:39

标签: typescript webpack jsx typescript2.0

我试图将我的ReactJS应用程序的JSX文件逐个转换为TS。因此,我将同时运行JSX和TS文件。 (因此在webpack中添加了两个规则,如下所示):

这是我处理jsx和ts文件的webpack配置的一部分:

module: {
        rules: [
            {
            test: /\.ts$/,
            exclude: /node_modules/,
            use: ["awesome-typescript-loader"]
        },
        {
            test: /\.(jsx?)$/,
            exclude: /node_modules/,
            use: ["babel-loader"]
        },
        ]
    }

但是当我运行webpack时,我收到以下错误:

  

模块构建失败:TypeError:无法读取属性'watchRun'   未定义

使用的套餐:

"webpack": "^2.2.1"
"awesome-typescript-loader": "^5.0.0-1", 
"typescript": "^2.7.2",
"@types/react": "^16.0.40",
"@types/react-dom": "^15.5.7",
"babel-core": "^6.23.1",
"babel-loader": "^6.4.0",

我在网上查了一下,但我找不到资源给这个watchRun问题提供了暗示。

感谢。

2 个答案:

答案 0 :(得分:9)

awesome-typescript-loader 5.x与webpack 4.x兼容,您的webpack版本太旧了。尝试将您的webpack升级到4.x或降级awesome-typescript-loader版本。

答案 1 :(得分:0)

解决方案是使用4.x边缘版本的故事书,这取决于webpack的正确版本(这不是当前稳定的3.x的情况)

示例:@ storybook / react @ 4.0.0-alpha.8适用于awesome-typescript-loader@5.x