2019给前端的5个提议
曾经 React 和 Angular 是两个很难协调的框架,开拓中挥霍了我们大量的人力。通过行使轻量级的 iron-redux,完全遵循 Redux 焦点原则下,我们内部实现了除组件层以外险些全部代码的复用。开拓类型、器材库告竣同等,开拓职员可以或许无缝切换,框架差别带来的特殊本钱降到很低。 二、全面拥抱 TypeScript TypeScript 今朝可谓大红大紫,按照 2018 stateofjs,高出 50% 的行使率以及 90% 的满足度,乃至连 Facebook 的 Jest 也正在从 Flow 切换到 TS。假如你还没有行使,可以思量切换,绝对能给项目带来很大晋升。已往一年,我们从部门行使 TS 变为全面切换到 TS,包罗我们本身开拓的器材库等。 TS 最大的上风是它提供了强盛的静态说明手段,团结 TSLint 能对代码做到越发严酷的搜查束缚。传统的 EcmaScript 因为没有静态范例,纵然有了 ESLint 也只能做到很根基的搜查,一些 typo 题目也许线上出了 Bug 后才被发明。 下图是一个前端应用常见的4层架构。代码和器材全面拥抱 TS 后,实现了从后端 API 接口到 View 组件的全链路静态说明,具有了完美的代码提醒和校验手段。 ![]() 除了上面讲的 iron-redux,我们还引入 Pont 实现前端取数,它可以自动把后端 API 映射到前端可挪用的哀求要领。 Pont 实现道理: Pont(法语:桥) 是我们研发的前端取数层框架。对接的后端 API 行使 Java Swagger,Swagger 能提供全部 API 的元信息,包罗哀求和相应的范例名目。Pont 理会 API 元信息天生 TS 的取数函数,这些取数函数范例美满,并挂载到 API 模块下。最终代码中取数结果是这样的: ![]() Pont 实现的结果有:
其它 iron-redux 能吸取到 Pont 接口相应数据名目,并推导出整个 Redux 状态树的静态范例界说,Store 中的数据美满的范例提醒。结果如下: ![]() 最终 TS 让代码越发结实,尤其是对付大型项目,编译通过险些就代表运行正常,也给重构增进了许多信念。 三、回归 Sass/Less 2015 年我们就开始实践 CSS Modules,包罗其后的 styled-components 等,到 2019 年 css-in-js 方案仍旧争论不休,固然它确实办理了一些 CSS 说话生成的题目,但同时增进了不少本钱,新手不足友爱、全局样式包围本钱高涨、伪类处理赏罚伟大、与antd等组件库团结有坑。与此同时 Sass/Less 社区也在飞速成长,尤其是 Stylelint 的成熟,可以通过技能束缚的本领来停止 CSS 的 Bad Parts。 全局污染:约定每个样式文件只能有一个顶级类,如 .home-page{ .top-nav {/** (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |