Bootstrap vs Material UI for React?

问题描述 投票:21回答:4

我一直在我的项目中使用这两个工具,有时我发现有必要在Bootstrap组件内使用Material UI组件,并按我期望的那样显示UI。有人建议我不要使用这种方法。有什么理由为什么两者都使用网格并且可以伸缩?

reactjs bootstrap-4 material-ui
4个回答
11
投票

我通常会很冗长,所以我将简洁的答案放在这里:

结论:

[谁说不好用两个都可能只是表达他们的意见,实际上是说同时使用这两种方法确实很缺乏上下文,这很不好在您的设计中。 @ user3770494提出了一个很好的观点-但要点,虽然有效且真实地了解了构建大小,但这确实取决于应用范围。如果是内部办公应用程序光纤网络本地的每个人都将被缓存在内存中无论如何...但是(不是你认识我)我不会否定地评价你如果您将它们混合在一起-除非是针对百万主要用户在移动设备(非常低的设备),台式机和其他设备上运行的应用程序世界各地需要实时更新的设备,以及在任何条件下以10000s的活动用户流式传输动态内容时间24/7。

实话实说,如果不是生死攸关,我想说的既要使用-也要同时使用自己做。多了解一件事的经验是更好,然后针对个人进行“致力于单一解决方案”增长。


此阅读的其余部分是可选的-不用客气:)

(我个人在生产应用程序中都使用过((和独立地)一起使用)>> ...我也从头开始完成了所有工作... (CSS是我做的工作中最不喜欢的部分) -幸运的是我有一个很擅长的同事)这是我的想法:

警告:

我会很冗长。

免责声明:

作为一个喜欢功能胜于形式的人,形式是一种事后挑剔的选择,供客户询问微小的微小变化。我将尽我所能,对“每个选项如何寻找感觉”发表自己的看法。

[我也在用我当前选择的方式查看您的问题-使用ReactJS / create-react-app为触摸屏嵌入式系统制作“演示”项目-因此,我将推出一半十个用于演示的模拟程序,什么也做不了(CCscanner,条形码扫描器,gps,网络摄像头集成,类似这样的有趣东西)。因此,我正在研究对于我来说,“因为我很无聊,并且得到了pi3b + board的乐趣”,对于我而言,这将是一件容易的事情。

答案:

  • 如果您有时间,奉献精神和资源,确实有将它们混合在一起没有错。但是你只需要思考关于它的时间/成本/收益。 DIY使最终用户满意-即使将它们混合。完全由您自己来制作轮子,但是您可以随时添加boostrap样式等。

  • 固有的风险是,如果同时使用两者-请确保不要将它们“过多地混合”-因为那样的话,尝试时总会有问题可以对其中一个进行版本更改。

  • 我喜欢很多MaterialUI的东西,但老实说,我不喜欢一些东西的外观(默认情况下为样式明智)-从功能上讲,我更喜欢然后进行引导,但同时,我不喜欢MaterialUIs React编程风格(作为一个讨厌CSS的纯粹主义者,但知道其重要性它是-必须使用!重要的永远...很大与我和我的同事使用的任何方式进行比较约定。不说我自己好还是坏偏好-但关于它的一些事情真的让我很生气(即使它们是有充分的理由完成)。

  • Bootstrap有很多可供选择的用途-我喜欢它看起来更好,我喜欢它与ReactJS更好地配合-但是reactstrap vs. react-bootstrap(这就是为什么我发现您的帖子试图弄清楚我要在演示中使用哪一个)。

  • 最近(用于生产项目),我确实尝试只坚持一个,但是通常我正在制作功能超越形式的系统。所以他们并不太在乎UI元素,而是如何使用它不能使它漂亮。所以我坚持只用一个只是为了让我的工作更轻松-通常我自己仍然会忽略样式...如果原始样式惹恼了我。但是我不坚持因为“同时使用这是一种糟糕的形式”,我为此只坚持一个上面提到的原因。我实际上是说带宽不是问题-同时使用两者的质量-但只能使用其中一部分您实际使用的。

  • ((我注意到有人曾经导入完整的jQuery,当时他们从中使用的唯一东西是$ .ajax(尽管很多,但仍然如此……我想……那不是矫kill过正吗?!)-因此,如果您同时使用两者并希望保持精简,只需确保在编译时就导入了您正在使用的内容。用Python的方式来说,我是说-永远不要从模块中使用import *(但是,您可以将Java语言作为一种概念来表达-webpack / gulp / whomever应该为您解决大部分问题)。假设您使用的是ES6 / 7样式的Javascript。


5
投票

我最近遇到了这种情况,因此选择同时使用这两种情况,但只能用于特定任务。由于它是响应式Web应用程序,因此Bootstrap最适合用于小部件的布局和Material UI(这只是我个人的喜好)。


2
投票

同时使用这两个都会增加您的生产js大小。


0
投票

您绝对可以同时使用两者,但您应该注意以下几点:

© www.soinside.com 2019 - 2024. All rights reserved.