Skip to content

Commit 381d9fe

Browse files
committedAug 30, 2024·
refactor(linter): shorten code in react/jsx_no_useless_fragment (#5350)
Shorten code. Also do the enum match first, as its cheaper than a string comparison.
1 parent f052a6d commit 381d9fe

File tree

1 file changed

+5
-9
lines changed

1 file changed

+5
-9
lines changed
 

‎crates/oxc_linter/src/rules/react/jsx_no_useless_fragment.rs

+5-9
Original file line numberDiff line numberDiff line change
@@ -164,17 +164,13 @@ fn is_html_element(elem_name: &JSXElementName) -> bool {
164164

165165
fn is_jsx_fragment(elem: &JSXOpeningElement) -> bool {
166166
match &elem.name {
167-
JSXElementName::IdentifierReference(ident) => ident.name.as_str() == "Fragment",
167+
JSXElementName::IdentifierReference(ident) => ident.name == "Fragment",
168168
JSXElementName::MemberExpression(mem_expr) => {
169-
if mem_expr.property.name.as_str() != "Fragment" {
170-
return false;
169+
if let JSXMemberExpressionObject::IdentifierReference(ident) = &mem_expr.object {
170+
ident.name == "React" && mem_expr.property.name == "Fragment"
171+
} else {
172+
false
171173
}
172-
173-
let JSXMemberExpressionObject::IdentifierReference(ident) = &mem_expr.object else {
174-
return false;
175-
};
176-
177-
return ident.name.as_str() == "React";
178174
}
179175
JSXElementName::NamespacedName(_) | JSXElementName::Identifier(_) => false,
180176
}

0 commit comments

Comments
 (0)
Please sign in to comment.