reactjs - 在 React 中创建按钮的最佳方法是什么
问题描述
在反应项目中创建按钮的适当方法是什么。例如,有一个创建按钮和编辑按钮,它们的区别仅在于它们拥有的符号(一个是加号,另一个是编辑符号)
我想做的是创建一个按钮组件,它具有我想要的所有样式并作为道具传递它应该做什么?这可以吗?
我知道我可以使用 css 或 bootstrap 之类的库进行样式设置,但我希望我可以仅使用 react 来创建此样式。问题是这些按钮显然应该做不同的事情,例如登录按钮和注册按钮发出请求但对不同的 api 端点,所以可以为两者使用相同的按钮组件吗?如果是这样,这将如何实际完成。我可以看到,例如在这种情况下,我可以作为道具传递,login
如果用户尝试登录则为真,否则为假。然后在我的按钮组件中,我会请求登录。
但是,如果我试图注册,那么login
应该是错误的,我会发送注册请求。这是我认为我的逻辑错误的地方,因为除了登录和注册之外,按钮还可以做其他事情,所以我该怎么做。
解决方案
到目前为止,我能够理解您想要创建几个具有不同外观并执行不同任务的按钮的问题,假设onClick
您想要执行不同的任务,例如注册/登录,并且您不清楚将其设为单个组件将是美好的。
是的,就我的经验而言,这被认为是创建按钮的标准方法,例如。在任何大项目中,可能会使用数百个按钮,我们无法将它们一个一个地创建,制作自定义反应组件将是最好的选择,现在回到您的问题,我们如何为不同的按钮执行不同的任务,我想你已经回答了那个道具!!,只需在道具中为您创建的不同组件实例传递适当的回调(请考虑道具的默认值)
推荐阅读
- react-native - 使用 react-native-router-flux 加载应用程序后如何隐藏启动画面
- ubuntu - IRC 客户端连接到通用频道
- android - 如何让两个或多个 React Native 应用相互共享数据?
- angular - 如何在 Angular 中实现最简单的 http post 请求?
- sql - Readyroll:使用 VSTS 构建时出现错误:漂移分析:将不会应用这些更改,因为 DriftOptionBlockDataLoss=True
- javascript - 如何使复制按钮复制“不”
- c# - 花括号在 c# unity中不能正常工作
- javascript - 在 for 循环中将变量名与迭代器索引连接起来
- php - 为什么我需要通过 ssh 在 Homestead VM 中重新创建 composer autoloader?
- javascript - 如何拦截和修改 XHR?