1. graph QL 基本概念
a. 什么是GraphQL?
官网定义如下:
GraphQL is a query language for APIs and a runtime for fulfilling those queries with your existing data. It gives clients the power to ask for exactly what they need and nothing more, makes it easier to evolve APIs over time, and enables powerful developer tools.
大白话就是不同的Query Language 是查询数据库,而咱们这个QL是查询API。API的查询可以给客户端他们需要的数据,no more no less.
b.why we use it?
i.数据需求的差异
PC由于屏幕尺寸的差异,在界面显示的内容其实是有差异的。大屏幕,中型屏幕,小型屏幕,平板电脑,手机屏幕,在各个大小屏幕上,为了更好的体验,理论上显示的内容应该有所不同。
使用场景不同,需求就不同,呈现的产品应该不同。相配套的广告投送和消费习惯的变化,需要精确把控,提高转化率和客单价。
ii. 版本差异
比如说在7.16新加入一些功能,新的FETCH,而7.15就不需要某些fetch.
iii.需求差异
千人千面,当数据JS端进行聚合的时候,某些情况,某些人需要多个接口的聚合,而某些人又需要分开调用。
iv. 前端的MODEL层和服务端MODEL层结构差异
前端,或者渲染层为了方便显示,可能采取某种数据的结构或者说组织形式,而在服务层,是为了方便存储,方便分成多个表单存贮,所以组织形式可能