reactjs - 如何让 typescript 只编译需要的文件?

标签 reactjs typescript

这是一个 XY problem ;回答任何部分都可以。

X:我想从单个源树中生成多个包。我知道 webpack supporting this ,但我怕,我不能用。例如,我的路由器由一个或多个映射路由(字符串)到页面(组件)的映射提供。我将这些 map 存储在单独的文件中,并根据需要注释导入和使用它们(我为我编写了一个简单的脚本)。

有更好的解决方案吗?

是:因此,在构建管理包时,无法从 index.tsx 访问用户页面。 .尽管如此,我还是收到了他们的 typescript 错误。即使我创建一个包含错误的新未使用文件,也会发生同样的情况。

如何避免编译未使用的文件?

我没有像我希望的那样在这里发布我所有的配置文件,在某处有一个简单的设置。我会在需要的时候做。单单这份 list 就让我很郁闷:

.babelrc
.env
.eslintrc
.gitignore
config-overrides.js
package.json
tsconfig.json
tslint-imports.json

最佳答案

这是一个部分的答案,但希望它会带你走向正确的方向。 typescript 查看 tsconfig.json。假设您的启动来自 npm 脚本,您可以指定要与 --project 一起使用的 tsconfig标志,如 tsc --project tsconfig-1.json .

在您的 tsconfig.json 文件中,只包含入口文件,例如

include: [
    "src/app/index.ts"
]

如果您有类似 "src/**/*" 的信息,然后它将处理所有文件。但是如果您只指定入口文件,那么它将只处理该导入树中的文件。树由 import 定义/import()声明。 require可能会被区别对待,我不确定。

供引用:https://www.typescriptlang.org/docs/handbook/tsconfig-json.html

如果要创建多个包,则需要运行多个 npm 脚本并拥有多个 tsconfig 文件,或者从命令行指定这些文件。

关于reactjs - 如何让 typescript 只编译需要的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57245550/

相关文章:

javascript - ReactJS: "Uncaught SyntaxError: Unexpected token <"

ReactJS:导入符号链接(symbolic link)组件错误:模块解析失败:意外标记:您可能需要适当的加载程序来处理此文件类型

typescript - 也许是 typescript 中的一种类型

node.js - Sequelize : instance. get 不是函数(升级后)

javascript - webpack 4.1.1 -> configuration.module 有一个未知的属性 'loaders' 。

reactjs - 如何使用 React Function Components 显示/隐藏微调器、 snackbar 或其他 transient 组件

reactjs - 从 React Azure 静态 Web 应用程序向 .NET Azure Function 发出请求时,为什么会收到 'blocked by CORS policy' 错误?

javascript - Redux-Toolkit 和 React Hooks - 存储更改不会触发重新渲染

javascript - 根据特定元素设置状态

typescript - 如何修复错误 TS2339 - 'HTMLElement' 上不存在属性