0.0.24 • Published 3 years ago
jsx-logical-operators v0.0.24
jsx-logical-operators
This may negatively impact performance for a react app, as it increases the size of the tree that needs to be diffed/rendered by React, and does not truncate the component tree below it in the same way as a ternary would.
That being said, personally I find this kind of declarative logic to be much easier to read in React code than ternaries, or even in many cases separated functions.
If
Simple
<If condition={someCondition}>
Show me if someCondition is true!
</If>
Complex
<If condition={someCondition}>
<Then>Show me if someCondition is true!</Then>
<ElseIf condition={someOtherCondition}>Show me if someCondition is false and someOtherCondition is true!</ElseIf>
<Else>Show me if neither someCondition nor someOtherCondition are true!</Else>
</If>
Switch
Standard - Value Based
NOTE: Fall-through is not supported at this time.
<Switch on={someValue}>
<Case when="A">Show me when someValue is A!</Case>
<Case when="B">Show me when someValue is B!</Case>
<Default>Show me if the value is not A or B!</Default>
</Switch>
Standard - Value Irrespective
<Switch>
<Case when={someCondition}>Show me when someCondition is true!</Case>
<Case when={someOtherCondition}>Show me when someCondition is false and someOtherCondition is true!</Case>
</Switch>
Function Support - Value Based
<Switch on={someValue}>
<Case when={val => val?.startsWith('A')}>Show me when the value starts with A!</Case>
<Case when={val => val?.startsWith('B')}>Show me when the value starts with B!</Case>
</Switch>
Function Support - Value Irrespective
<Switch>
<Case when={() => someCondition}>Show me when someCondition is true!</Case>
</Switch>
0.0.24
3 years ago
0.0.23
4 years ago
0.0.21
5 years ago
0.0.20
5 years ago
0.0.19
5 years ago
0.0.18
5 years ago
0.0.17
5 years ago
0.0.15
5 years ago
0.0.16
5 years ago
0.0.14
5 years ago
0.0.13
5 years ago
0.0.11
5 years ago
0.0.12
5 years ago
0.0.10
5 years ago
0.0.9
5 years ago
0.0.8
5 years ago
0.0.7
5 years ago
0.0.3
5 years ago
0.0.5
5 years ago
0.0.6
5 years ago
0.0.2
5 years ago
0.0.1
5 years ago