我试图将我的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问题提供了暗示。
感谢。
答案 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