公司项目不要用。个人的玩的话,也不太建议;
说说我对于这个的经历吧
Google Material Design 出来不久想找些这类的库使用下,当时就发现了 Polymer ,不过那个时候网站打开极慢,文档有点类似
https://material.angularjs.org/latest/ 的样子。非常惊艳的例子就是用 Polymer 做的计算器,但是手机端完全卡到无法用就放弃了(记得像是 2014 年末?)。
后来有一次新的小项目(2015 年),要想起用 MD 设计风格做一套开发,比较后选了个 Angularjs 的 MD ,学了他的 Dom 和一些 Angularjs 的东西,一边对比文档,一边做,耗费时间比正常多了很多。
最近有一个新的小项目的 demo ,又想起来 MD ,找来找去,找到了基于 React 实现的 material-ui (
http://www.material-ui.com/#/),又是一边文档一边对这做,耗费时间比正常也多了不少。后面就仔细反思了一下,觉得有几个点值得注意:
1.现在 MD 的不少实现都是各种自定义标签,属性毫无规范性可言,每家的命名规则标准都不一样,前端市场你也懂的,今天学了明天可能就出现个更好的,你现在用到的很可能会被淘汰掉;
2.因为这些东西都是新的,一眼望去很惊艳,但是每个项目对应的社区不好说,自己了解的也不够深,比如 material-ui 上面 15 年提的 feature 到现在还没有实现, callemall 的团队只说做做做,但是也一直无动于衷。
3.还是社区,新的东西,周边不行,很多东西没有,自己造太耗时间。
4.团队配合,对前端来讲,东西太多,每个人学习的都有点杂,特别是新人,你的 polymer 6 到飞起,对整个团队来讲这个可能就是个坑,都学习的成本比较大。
目前来讲,我的建议是走"轻量级"的 MD 框架,所以轻量级不是说代码少,而是指看看自己熟悉的框架和 MD 的有没有结合点,比如你熟悉 bootstrap ,那就可以考虑用 bootstrap-material-design 来搞搞,或者一些纯 css 的实现,这样子对公司项目来讲风险可能是最小的;
其实楼主仔细想想, Polymer 只是个 MD 的实现,而我们选择 MD 只是因为效果感觉很棒,所以尽量从轻(只 css 的方案)。。毕竟指不定有一天有个更好的设计, Polymer 那些标签属性都没用了;而 html 显然变化不会那么快;
另外,建议楼主花点时间在 React , webpack ;
其他等了解深的人来现身说法。。