Merge pull request #2394 from esbena/js/support-getDerivedFromError

Approved by max-schaefer
This commit is contained in:
semmle-qlci
2019-11-22 07:45:45 +00:00
committed by GitHub
3 changed files with 20 additions and 1 deletions

View File

@@ -136,7 +136,12 @@ abstract class ReactComponent extends ASTNode {
result = arg0
)
or
result.flowsToExpr(getStaticMethod("getDerivedStateFromProps").getAReturnedExpr())
exists(string staticMember |
staticMember = "getDerivedStateFromProps" or
staticMember = "getDerivedStateFromError"
|
result.flowsToExpr(getStaticMethod(staticMember).getAReturnedExpr())
)
or
// shouldComponentUpdate: (nextProps, nextState)
result = DataFlow::parameterNode(getInstanceMethod("shouldComponentUpdate").getParameter(1))

View File

@@ -0,0 +1,12 @@
import React from "react"
class C extends React.Component {
static getDerivedStateFromError(error) {
return { error }
}
render() {
this.state.error;
}
}