我有一个使用switch语句的react组件,并且我希望在且仅当未返回默认语句时才提供条件渲染。请参见以下代码作为示例:
import React from 'react';
const SwitchStatement = ({condition}) => {
switch (condition) {
case "a":
return (<div>hello</div>);
case "b":
return (<div>world</div>);
case "c":
return (<div>goodbye</div>);
default:
return null;
}
};
const renderSwitchStatement = (condition) => (
<SwitchStatement condition={condition} />
);
const renderComponent = ({condition}) => {
const rendered = renderSwitchStatement(condition);
if (rendered !== null) {
return rendered;
}
}
例如我正在尝试编写一个函数,以使SwitchStatement("d")
返回null,这是从默认语句中声明的。当然,这不会发生,因为不会返回null,而是返回react组件。我也许可以使用if / else语句完成此操作,但是如何确定switch语句中的传递条件是否由switch的默认值处理?谢谢。