react-native中的flow和eslint有什么区别?我应该使用哪一个?我可以同时使用吗?

问题描述 投票:4回答:2

有人要求我在我的项目中使用静态分析器。因为我已经在使用Eslint,更漂亮也有助于识别编译时错误,然后我在react-native中找到了静态分析的流程。

它使我迷惑为类似的工作。

而且我没有发现流量和eslint之间的区别。所以我的问题是

  1. eslint和flow是否解决了同样的目的?
  2. 如果没有那么何时使用eslint以及何时使用flow
  3. 我可以一起使用flow和eslint吗?
react-native flowtype
2个回答
1
投票
  1. eslint和flow是否解决了同样的目的?

是。我认为他们有相同的最终目的(这并不意味着他们解决同样的问题)。帮助程序员通过警告丑陋/错误的语法代码来实现可能在打字/编码阶段导致错误的错误/危险代码。因此它将减少运行时错误。

  1. 如果没有那么何时使用eslint以及何时使用flow
  • ESLint是一种短绒https://eslint.org/docs/about/ 代码linting是一种静态分析,经常用于查找不符合某些样式指南的有问题的模式或代码。大多数编程语言都有代码链接,编译器有时会在编译过程中加入linting。

ESLint更像会议规则检查规则。

  • Flow是一个静态类型检查器https://flow.org/en/docs/getting-started/ Flow是JavaScript代码的静态类型检查器。它可以帮助您提高工作效率。让您的代码更快,更智能,更自信,更大规模。 Flow通过静态类型注释检查代码是否存在错误。这些类型允许您告诉Flow您希望代码如何工作,Flow将确保它以这种方式工作。

它与ESLint有点相同,但重点关注类型注释。

  • 如果你想在约定级别减少JS中的拼写错误/冒险/丑陋代码 - >需要ESLint。
  • 如果你想为JS代码添加粘性类型,而其他程序员不会以错误的方式使用你的代码 - > Flow
  1. 我可以一起使用flow和eslint吗?

是。我正在使用@ babel / preset-flow和eslint-config-airbnb。

P / s:在我看来,ESLint是必备的。可以考虑Flow / TypeScript


2
投票

Flow是javascript的类型检查器,它可以确保根据您在运行代码之前提供的信息传递函数或类正确的信息类型。

ESLint是一个短绒

Lint或linter是一种分析源代码以标记编程错误,错误,样式错误和可疑构造的工具。

https://en.wikipedia.org/wiki/Lint_(software)

因此,ESLint有一长串预定义规则,您可以根据自己的喜好进行调整,以便在运行之前捕获错误,无论是语法,代码样式还是错误做法。

因此,总结每个程序试图解决两个不同的问题,因此可以单独使用,一起使用,或者两者都不使用。

© www.soinside.com 2019 - 2024. All rights reserved.