加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

2019给前端的5个提议

发布时间:2019-02-16 06:26:50 所属栏目:建站 来源:佚名
导读:2019 夏历新年即将到来,是时辰总结一下团队已往一年的技能沉淀。已往一年我们支撑的数据相干营业突飞猛进,个中两个焦点平台级产物代码量别离到达30+万行和80+万行,TS 模块数均高出1000个,协同开拓职员增进到20+人。因为汗青缘故起因,开拓框架同时基于 Rea

曾经 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 组件的全链路静态说明,具有了完美的代码提醒和校验手段。 

2019给前端的5个提议
前后端协作简图

除了上面讲的 iron-redux,我们还引入 Pont 实现前端取数,它可以自动把后端 API 映射到前端可挪用的哀求要领。

Pont 实现道理:

Pont(法语:桥) 是我们研发的前端取数层框架。对接的后端 API 行使 Java Swagger,Swagger 能提供全部 API 的元信息,包罗哀求和相应的范例名目。Pont 理会 API 元信息天生 TS 的取数函数,这些取数函数范例美满,并挂载到 API 模块下。最终代码中取数结果是这样的:

2019给前端的5个提议

Pont 实现的结果有:

  • 按照要领名自动匹配 url、method,而且对应到 prams、response 范例美满,并能自动提醒
  • 后端 API 接口改观后,前端相干联的哀求会自动报错,再也不担忧后端暗暗改接口前端不知晓
  • 再也不必要前后端接口约定文档,,行使代码担保前端取数和后端接口界说完全同等

其它 iron-redux 能吸取到 Pont 接口相应数据名目,并推导出整个 Redux 状态树的静态范例界说,Store 中的数据美满的范例提醒。结果如下:

2019给前端的5个提议

最终 TS 让代码越发结实,尤其是对付大型项目,编译通过险些就代表运行正常,也给重构增进了许多信念。

三、回归 Sass/Less

2015 年我们就开始实践 CSS Modules,包罗其后的 styled-components 等,到 2019 年 css-in-js 方案仍旧争论不休,固然它确实办理了一些 CSS 说话生成的题目,但同时增进了不少本钱,新手不足友爱、全局样式包围本钱高涨、伪类处理赏罚伟大、与antd等组件库团结有坑。与此同时 Sass/Less 社区也在飞速成长,尤其是 Stylelint 的成熟,可以通过技能束缚的本领来停止 CSS 的 Bad Parts。

全局污染:约定每个样式文件只能有一个顶级类,如 .home-page{ .top-nav {/**

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读