创建 React App 2 - 删除用于测试的 html 属性

Posted

技术标签:

【中文标题】创建 React App 2 - 删除用于测试的 html 属性【英文标题】:Create React App 2 - remove html attribute for testing 【发布时间】:2019-07-19 03:10:04 【问题描述】:

是否可以使用此插件连接 Create React App 2:https://www.npmjs.com/package/babel-plugin-jsx-remove-data-test-id 而不会弹出? 我创建了.bablerc 文件,但它不起作用。 我想使用自定义属性进行 bdd 测试并在生产中删除此属性。

另外,我不想创建 HOC 来应用属性 - 我有很多组件并且包装每个组件非常困难。

【问题讨论】:

【参考方案1】:

您可以使用 react-app-rewired https://www.npmjs.com/package/react-app-rewired 并通过 config-override.js 文件覆盖配置:

const 
  override,
  addBabelPresets,
  addBabelPlugins,
 = require('customize-cra');

module.exports = override(
  ...addBabelPresets([
    '@babel/preset-env',
    
      modules: false,
      useBuiltIns: false,
      debug: false,
    ,
  ]),
  ...addBabelPlugins(
    'babel-plugin-styled-components',
    'babel-plugin-jsx-remove-data-test-id',
  ),
);

【讨论】:

以上是关于创建 React App 2 - 删除用于测试的 html 属性的主要内容,如果未能解决你的问题,请参考以下文章

npx create-react-app my-app 创建后删除已安装的 node_modules 包?

如何使用 create-react-app 提供 SSL 证书?

[react] 测试 app.post 创建数据库条目时出现错误代码 HTTP/1.1 500 Internal Server Error

React 与 Puppeteer + 伊斯坦布尔的代码覆盖率

react 新创建项目

create-react-app 创建的项目执行npm run eject后,运行报错