写点什么

纯前端,不要后端,开发一个项目

作者:图颜有信
  • 2023-08-28
    重庆
  • 本文字数:1225 字

    阅读完需:约 4 分钟

背景:周一早上,老板找到我说公司因为要砍程序员,决定不要后端,由一个前端完成公司项目开发,因为我也看不惯后端,老板提出这个方案的时候我就同意了,“别惊讶”。我同意是为了锻炼自己,以后好出去接活单干,因为这种杀猿取卵的公司我瞧不起。

为了验证这个方式可以,这是用一个星期时间,由自己一个人独立开发出来的小程序【图颜病历】。可以扫码体验(微信里网页打开的可长按图片)

我的后台是用 uni-cloud 写的(纯前端技术 js)。

所以我有两个调用后台的方式。

  1. 是传统的接口调用,即云函数调用。

运用场景:第三方插件,如:uni-id 因为你要跟着这个插件写。复杂的数据查询,因为可能设计到多表,代码多逻辑复杂,放到后台一个地方,前端调接口,类似代码封装,如商品的查询。

  1. 是直接前端操作数据库。

运用场景:大部分简单增删改查,前端直接通过 db.操作数据库,优势是可以利用 schema 做权限控制。

小程序中页面和组件是有区别的(坑 1)。

我们可能大部分都是 vue 开发者,在 vue 里面都是组件。也就是说我页面拥有的生命周期,在组件里面都有,但小程序不是这样的,页面有生命周期,比如 onshow() 但组件就没有,所以要有这个概念的转变,不急,写多了就会了。

要有个人组库件

如果以后自己开公司,或是个人开发者,平时也会出很多产品,所以有个自己的库更灵活,更高效。

后端 技术栈 uni-cloud 是云开发

里面集成了云函数,数据库,云存储,前端网页托管,反正用这套我们可以做网站(如官网)、做 app、做小程序、做 pc 后台管理、然后操作简便。因为它是界面式的,能解决前端程序员不熟悉服务器,数据库等问题。


项目小坑-地图的特性

我项目刚好有一个避开常规增删改查的功能,有个附近的人功能。为什么单独把这个拿出来说呢?

  1. 是证明这种开发方式是可以覆盖所有业务的,java 能行,它也行。

  2. 是吐槽一下它的文档或者是我看文档的能力,地图查询位置要用的 Geo()方法,然后文档呢没有详细举例怎么使用,但是有一定的方法描述,最关键的一点是要加一个地图索引。这个后端词汇就难倒前端了,我们可能只知道 id 是数据库的索引,但一个表其实有多个索引,比如下图


这个问题我百度了很久,解决起来却很简单。

  1. 是我想找一些对这个技术感兴趣的朋友,建个交流群。这样以后遇到这种问题,大家可以相互提个醒。可以私信我拉你进群。

项目小坑-联表查询

有一个查询操作是需要多表查询的,比如我的收藏这种功能,它需要查两个表,商品表,收藏表(收藏表里面记录的是商品 id,用户 id)


利用 getTemp()方法可以生成一个临时表,再用这个临时表和收藏表一起查,就能查出当前用户的我的收藏,注意,收藏变一定要在表结构 schema 中设置 foreignKey 即关联 id,这项目里关联 id 是商品 id

项目小坑-数据库数据清洗

有一个需求是把商品数据库的所有类型替换一下,可以在 newQuery.sql 这个文件操作

欢迎大家验证一下我这个 3 天做出来的小程序,看看到底符合基本市场要求不,能不能完成业务功能,【图颜病历】。可以扫码体验(微信里网页打开的可长按图片)


下一篇聊部署(小程序审核)的坑

用户头像

图颜有信

关注

我的微信公众号:图颜有信 2023-08-08 加入

还未添加个人简介

评论

发布
暂无评论
纯前端,不要后端,开发一个项目_前端_图颜有信_InfoQ写作社区