创建 React App Typescript:仅转译,不进行类型检查,不进行 lint
Create React App Typescript: Transpile only, do not type check, do not lint
我有一个小型 React 项目,我想将其部署在 RAM 有限且小于 1.5 GB 的 Google Compute Engine 实例上。
在我的应用程序上构建生产版本时,typescript linter 和编译器通常使用大约 2 GB 的 RAM 来转换这个小项目,所以当我部署时,Compute Engine 实例在项目可以运行之前用完了 ram建成。
我怎样才能让 Typescript 编译器除了尝试传输到 javascript 之外什么都不做?没有 lint 检查,没有 ts 配置规则检查,除了最低限度什么都不做:转译应用程序?
我查看了 tsConfig 的所有标志,即使是最不严格的选项仍然尝试太多。
谢谢
为生产构建项目后,您应该有一个 build
文件夹,可以将其部署到您的 Google Compute Engine 实例。此时它只是 HTML、JavaScript 和 CSS 的集合。 RAM 使用量应该可以忽略不计,因为此时没有发生转译,只提供静态文件。
但是,如果您要将整个源代码部署到 Google Compute Engine 并使用 "start" npm 任务,那么您将立即转换整个内容。这不是推荐的方法。
最好使用 nginx
或 express
之类的 Web 服务器来为构建生成的静态文件提供服务。
简短回答:不,您不能使用 Create React App(CRA) 禁用类型检查。
详情
无法禁用 TypeScript 检查,所以您只能eject
或 react-app-rewired
并编写自己的 Babel 配置。
我的建议是彻底清除 CRA,然后自己编写一个 webpack 配置,并使用 ts-loader 的 transpileOnly
选项。
如果只想编译不考虑TS错误,应该设置如下环境变量。
TSC_COMPILE_ON_ERROR=true
即使 TypeScript 检查失败,CRA 也可以编译。
但是,它不会禁用类型检查,但不会因 TypeScript 错误而失败。
我有一个小型 React 项目,我想将其部署在 RAM 有限且小于 1.5 GB 的 Google Compute Engine 实例上。
在我的应用程序上构建生产版本时,typescript linter 和编译器通常使用大约 2 GB 的 RAM 来转换这个小项目,所以当我部署时,Compute Engine 实例在项目可以运行之前用完了 ram建成。
我怎样才能让 Typescript 编译器除了尝试传输到 javascript 之外什么都不做?没有 lint 检查,没有 ts 配置规则检查,除了最低限度什么都不做:转译应用程序?
我查看了 tsConfig 的所有标志,即使是最不严格的选项仍然尝试太多。
谢谢
为生产构建项目后,您应该有一个 build
文件夹,可以将其部署到您的 Google Compute Engine 实例。此时它只是 HTML、JavaScript 和 CSS 的集合。 RAM 使用量应该可以忽略不计,因为此时没有发生转译,只提供静态文件。
但是,如果您要将整个源代码部署到 Google Compute Engine 并使用 "start" npm 任务,那么您将立即转换整个内容。这不是推荐的方法。
最好使用 nginx
或 express
之类的 Web 服务器来为构建生成的静态文件提供服务。
简短回答:不,您不能使用 Create React App(CRA) 禁用类型检查。
详情
无法禁用 TypeScript 检查,所以您只能eject
或 react-app-rewired
并编写自己的 Babel 配置。
我的建议是彻底清除 CRA,然后自己编写一个 webpack 配置,并使用 ts-loader 的 transpileOnly
选项。
如果只想编译不考虑TS错误,应该设置如下环境变量。
TSC_COMPILE_ON_ERROR=true
即使 TypeScript 检查失败,CRA 也可以编译。 但是,它不会禁用类型检查,但不会因 TypeScript 错误而失败。