首页IT科技前端怎么开发微信小程序(前端菜鸟如何快速开发个人产品)

前端怎么开发微信小程序(前端菜鸟如何快速开发个人产品)

时间2025-09-19 11:48:33分类IT科技浏览5364
导读:我是车辙,我的掘金小册《SkyWalking:应用监控和链路跟踪》已经上线啦,这是我的第一本电子书,欢迎大家订阅。...

我是车辙                ,我的掘金小册《SkyWalking:应用监控和链路跟踪》已经上线啦                         ,这是我的第一本电子书         ,欢迎大家订阅                 。

大家好        ,我是车辙                         。在完成小册后的一段时间                         ,我突然想开发一款个人H5产品        。在起初有这样想法的时候                 ,内心其实还是有不少纠结的                 。

大家都知道        ,虽然我是计算机专业                         ,但我从毕业到现在工作4年时间                 ,基本上所有的工作都是和后端有关                         。唯一和前端沾边的学习技能还是在大学时期学的,那时候因为毕业设计是爬虫网站                         ,主要用于小说的爬取和阅读        。所以它的大部分内容还是以后端为主                          ,前端界面非常简单,用了Bootstrap 布局和JavaScript         。

如果要做一款H5产品                ,除了需要学习新的框架                          ,像Vue或者React, 还得去学习Css 以及各种布局         ,也许后面还得对其进行机型适配                ,想想就头大                         。

当初放弃前端的原因还是觉得 Css 太复杂了                         ,天底下怎么会有这么难的技术                。数据结构和算法和它比都算简单的         。

后来请教了前端的朋友和同事         ,他们告诉我要做一款个人的产品是有速成的办法的        ,可以通过CodeFun快速生成前端代码                          。至于后端和上线部署对我来说还是没有什么难度的                。磕磕绊绊之下                         ,我的产品在两周前终于搞定了                 ,完结撒花。

文末有链接        ,大家可以去体验下

接下来                         ,我会基于我的学习                 、踩坑经历                 ,给那些后端精通                         、前端小白的程序员们提供一个产品快速开发方案                          。

画设计稿

正经的互联网公司,在项目立项后                         。产品首先需要出一份原型                         ,然后交由 UI 出一份设计稿                          ,接着前端负责实现。对于我们个人开发者而言,原型可以不用出                ,设计稿还是需要的                 。况且                          ,多画图对我们程序员还是很有帮助的         ,不管是时序图还是流程图                ,还是设计稿                         ,都能锻炼我们的思维能力

我使用的设计工具是Figma         ,国外的一款设计平台                         。相比于 Axure        ,我更看重它的在线设计协作能力        。如果对Figma不熟悉的同学                         ,可以参考B站的视频教程快速学习                 ,小破站牛逼!B站地址

你可以快速把这个B站视频看完        ,然后再用个半天                         ,差不多就能靠 Figma 画出个设计稿了                 。如果需要Logo图标                 ,可以去阿里妈妈的图标网站iconfont下载                         。地址

下面的就是我的产品设计稿了        。

前端代码生成

画完设计稿,之前我们提到过                         ,可以通过CodeFun 这个平台快速生成前端代码                          ,它的官网简介说是 UI 设计稿自动生成源代码         。CodeFun 可以说和Figma 进行了深度绑定,它在Figma中开发了一款插件                ,可以把Figma的产品设计稿上传到CodeFun 中                         。把我这边的设计稿上传后                          ,可以看到在 CodeFun 中成功生成了页面                。

随便点击一张设计稿         ,它就能帮我们生成对应平台的程序代码                ,包括Uniapp        、Vue                 、微信小程序等         。

但是接下来的选择就犯了难                         ,该选择哪个平台?因为我的平台定位是微信H5         ,但不排除之后可能会复制到小程序                          。网上搜索后        ,网友推荐了UniApp作为开发平台                         ,它能把 UniApp 的原生代码转换成微信小程序                         、H5,甚至 App 的代码                 ,并且官网的文档足够丰富        ,至少对于我来说足够了                。

H5 开发

对于 Uniapp 的学习                         ,B站上视频一堆                 ,只不过内容都很多,就算开着2倍速                         ,也无法在短时间内学会                          ,看完说不定还会忘。所以我们可以参考网上某马的入门教程,了解 Uniapp 的基本使用                ,不需要多                          ,了解下基本配置和 Tabbar 的生成即可                          。

具体地址就不发了         ,可能会有给某马打广告的嫌疑

配置完成后                ,通过微信小程序开发工具                         ,能有这个样子就差不多                         。

样式开发

接着把 CodeFun 生成的代码文件复制到Uniapp         ,你以为这很简单的吗?其实这才是痛苦的开始。为什么这么说?

CodeFun 生成的静态代码完全只能看        ,比如说它生成的文本框只是一个Div + Css                 。你需要把它替换成对应的组件                         。因为我们是Uniapp 开发的                         ,所以我建议去它的官网找对应的组件会比较快                 ,而且兼容性也会更强        。另外像一些相对复杂的组件        ,Scoll        、DateTime         、swiper-item 都需要我们去替换掉                 。 它生成的 Css 既多还复杂,重重嵌套                         ,有时候一个简单的 View 会有4                         、5个样式                         。还有一些布局                 ,比如flex布局,主轴和副轴是什么                         ,对于前端小白的我                          ,每次碰到不会的,都得去网上看下什么意思        。为了防止忘记                ,我都会把它记下来                          ,睡前再回顾一遍         。 有些Uniapp的组件和 CodeFun生成的代码会存在一定冲突                         。比如说居中                、字体等         ,这时候就得手动去调整样式                。如果调不通                ,需要去修改组件源码         。这对我来说可太难了                         ,记得一开始改个左右居中对齐就花了我3个小时         ,差点就把我的耐心给熬没了                          。 CodeFun 生成的css因为不通语境        ,命名方式都是类似于:Section1         、Section2                          、Group1                、Group2 维护起来特别的麻烦                。

所以说                         ,自动生成代码其实也是存在不少弊端                 ,只不过作为刚入门的新手        ,能帮助我们快速开发                         ,优势还是大于劣势的。

事件开发

到这一步                 ,产品其实已经初具雏形                          。我们要做的是给他添加各种事件以及和后端的交互                         。基本上这一步主要的难点在于 Vuex 和同步异步的使用,像 v-model、v-for                          、v-if 这种学习起来还是比较简单的。

其实我一开始主要就是用 LocalStorage 存储信息                         ,觉得没有Vuex不也能开发嘛                          ,不过随着页面间的交互多起来,问题就暴露了:我在A页面的修改了用户信息后                ,到B页面数据并没有随之变化                 。只好乖乖的去学Vuex                         。所以这里我建议                          ,如果你的项目页面较少         ,就用LocaStorage就完事了                ,如果页面较多且有交互                         ,就用Vuex + localStorage        。

剩下的还有同步异步问题就靠Promise去解决         ,这个东西一开始我特别理解不了        ,比如使用await关键字的使用场景                 。感觉后端的异步比前端还是要简单点                         。

额外问题

在开发过程中                         ,还存在些额外的问题        。

比如微信授权问题                 ,因为我是需要微信登录的        ,但是在Hash模式下因为#号导致了微信回调地址出错                         ,所以我最后还是改成了History模式         。至于这个引出的问题                 ,我们在部署环节再讲                         。 一开始我以为微信授权需要真实的测试环境地址,打算通过内网穿透测试                。后面才发现你可以修改本地Host 创造个假的域名用于本地测试         。

部署到服务器

在本地开发完成后                         ,我们需要部署到测试环境中                          。Uniapp 提供了一键构建打包的功能                          ,直接使用就可以了                。

而服务器我建议购买腾讯云的,相比于阿里云更加便宜点                ,【吐槽下阿里云太贵了】。

然后腾讯云和宝塔是有合作的                          ,用宝塔操作服务器                         、安装软件、维护软件什么的         ,确实比自己手动敲代码更简单                          。安装以下几个软件:

JDK11 MySQL Nginx

注意开通对应的防火墙端口                ,比如MySQL就需要开通3306端口                         ,Redis 需要开通 6379端口

这边的几个问题有:

跨域问题:跨域主要就是因为域名                 、端口                         、协议不一致导致的                         。以前还没考虑过为什么前端本地调试的时候没有跨域问题         ,原来是前端做了代理        ,帮助我们和后端进行了交互。但是在测试环境上就是些Html和js代码,所以我们可以通过Nginx帮助我们做这个代理                 。                         。 history 问题                         ,因为history模式去除了#                 ,在刷新页面的时候会默认请求后端        ,但是后端没有这个接口                         ,就导致了404        。所以我们需要在Nginx 通过try_files进行配置                 ,先去前端页面找,找不到再去请求后端服务器                 。

后端的部署                         ,我推荐使用云效【我觉得是我目前为止体验最好的产品了】                         。全部部署完成后                          ,产品就正式上线了        。

OK,到这差不多就结束了         。其实还有很多问题存在                ,比如说微信支付的JS-SDK                          ,组件封装等等         ,不过篇幅有限                ,就到此为止吧                         。最后奉上体验地址                         ,希望大家前往试用                。前端小白的作品         。

总结

通过这次实打实的体验前端同学的工作         ,我以前觉得前端简单的想法真是大错特错        ,前端的难度一点都不比后端低                          。像这次机型适配                         ,我压根就没完成                。。                          。

最后希望大家多多点赞        、收藏                         。就和收藏电子书一样                 ,点赞                 、收藏了        ,也就代表学会了                         ,不要问我怎么了解的这么清楚。

我是车辙                 ,掘金小册《SkyWalking》作者,一名常被HR调侃为XX杨洋的互联网打工人                         ,                 。

有需要源码

的同学可以关注公众号《车辙的编程学习圈》领取                          ,说不定什么时候这个产品也开源了,点击领取

本文由博客一文多发平台 OpenWrite 发布!

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
那些希望我死的人 豆瓣(那些你希望在N年前就掌握的命令)