当我只希望它在一个文件夹/文件中运行时,WebPack ts-loader编译所有文件

6 typescript tsc gulp webpack ts-loader

我发现我的应用程序结构和构建过程中存在使用WebPack,TypeScript和TS-Loader的问题,我认为这是由TypeScript 2.1.4引起的,但显然是在那里.

您可以从我的其他帖子中看到所有详细信息: TypeScript 2.1.4打破了webpack ts-loader中的更改

简而言之,我将Gulp和WebPack设置为/client/app.ts的入口点,现在它几乎没有任何东西(当然没有引用/ server /)但是WebPack构建过程的TypeScript编译阶段仍在尝试在/ server上运行(在我的另一篇文章中,显示来自Server文件夹的编译错误,当它应该只从Client文件夹运行时).

我做错了什么以及如何修复它以便它只在/client/.ts文件上运行,特别是从app.ts中走出结构?

这是我的回购展示了我到目前为止所做的一切:https: //github.com/CmdrShepardsPie/test-ts-app/tree/develop

谢谢

Ant*_*ony 17

您可以通过指定选项来解决这个错误onlyCompileBundledFiles在你webpack.config.js,像这样

module: {
    rules: [
        {
            test: /\.tsx?/,
            use: [{loader: 'ts-loader', options: {onlyCompileBundledFiles: true}}],
        }
    ],
},
Run Code Online (Sandbox Code Playgroud)

我仍然觉得ts-loader在默认情况下被打破是令人惊讶的,但至少有一个解决方法.

  • 这就是答案。谢谢。 (3认同)
  • 只是更新,现在已经 2020 年了,ts-loader 仍然表现出这种愚蠢的行为。为什么它自动编译所有 ts 文件超出了我的范围,但这显然是我们生活的世界。疯子。 (2认同)