React 中的 ngIf(Angular) 和 v-if (Vue) 替代方案

React 中的 ngIf(Angular) 和 v-if (Vue) 替代方案

在 Angular 或 Vue 中,您可以使用指令有条件地渲染组件,例如 动图 v-如果 .但是在 React 中没有指令的概念,你必须使用下面的语法来渲染组件

 返回 (  
 <>  
 {加载? <></> :<EmployeeList/> } 登录。  
 </>  
 );  
 }

但是,如果您有嵌套条件,那么模板看起来很混乱并且很难阅读。

我们可以在反应中实现类似的行为 反应如果 零件。

ReactIf.tsx

 导出默认函数 ReactIf(props: { condition: boolean | undefined; children: React.ReactNode }): JSX.Element  
 {  
 返回 props.condition === 未定义 ||  
 !props.condition ? <></> : <>{props.children}</> ; }

它是一个接受两个属性的功能组件

1.条件
2. 儿童

(健康)状况 :组件呈现传递的子项的条件。
孩子们 : 根据条件渲染的孩子

您可以如下重写我们之前的组件,这样更具可读性

 <ReactIf condition={loading}>  
 <EmployeeList/>  
 </ReactIf>

快乐编码:)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/29450/44131201

posted @ 2022-09-12 01:45  哈哈哈来了啊啊啊  阅读(172)  评论(0编辑  收藏  举报