【问题标题】:Find all hardcoded strings in React/Node project在 React/Node 项目中查找所有硬编码的字符串
【发布时间】:2021-02-19 11:34:50
【问题描述】:

我和我的团队接手了一个仅部分实施 i18n 的遗留项目。现在我们想在项目中找到所有硬编码的字符串。你们能想到一个正则表达式、插件(其他 VS 代码)或脚本/工具吗?

有趣的是,搜索这个问题主要是桌面编程语言。

【问题讨论】:

  • 在说硬编码字符串时,您是指 i18n 不使用的文本,如 <p> some text blah blah </p> 还是实际值文本,如 <SomeComponent value={"foo"} />
  • 不幸的是。
  • 好的,那么基本上用正则表达式是不可能的。当然,这取决于项目规模,但 IMO 有很多情况。 HTML 标签、自定义组件、嵌入文本、映射列表/组件。
  • 我会一次只做一个文件(手动)它是迄今为止最安全的,我怀疑另一种解决方案会以更少的手动时间自动完成任务.....

标签: javascript reactjs internationalization react-i18next


【解决方案1】:

您可以使用 VS Code 扩展 i18n Ally:https://marketplace.visualstudio.com/items?itemName=Lokalise.i18n-ally

我也在做一个文本提取项目,这让事情变得更快了。如果您突出显示静态/硬编码文本,则可以使用一个快捷操作来提示您为文本创建相应的键并将文本移动到您的 json 文件中,从而加快速度。我为它创建了一个键盘快捷键,如下所示:

{
  "key": "shift+cmd+i",
  "command": "i18n-ally.extract-text"
}

回到您的直接问题,该扩展程序有一个测试版功能,用于检测硬编码字符串,非常有用。我遇到的一个问题是我还不知道是否有办法阻止它检测内联 CSS 字符串。最好忽略所有这些。

一些功能是实验性的/处于测试阶段,所以我不能保证它是防错的,但到目前为止它对我来说非常有用。希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-09-22
    • 2021-03-14
    • 1970-01-01
    • 2015-08-28
    • 2022-11-23
    • 1970-01-01
    • 2015-10-07
    • 1970-01-01
    相关资源
    最近更新 更多