评论

我的微信小程序制作的辛苦历程

我的小程序制作历程

跳一跳流行的时候,我知道了小程序,那个时候只是和同事在一起PK玩玩。半年后,因工作需要,用到小程序,我自己注册了一个账号,从此开启了我的小程序编程之路。

 

刚开始,很疯狂,连着轴的读了三遍小程序开发的文档。拿着微信小程序的demo看了又看,除了自带的获取用户头像外,然并卵,我还是什么都不会,就搁置起来。

 

我不喜欢前端编程,但是喜欢前端华丽的界面。在学习编程语言golang的时候,因golang官方的网站手机上无法打开,我在想能不能把它搬到手机上。开始有意向使用html5,但因域名服务器及不喜欢前端等原因放弃了。这个时候,云开发已经推出。仔细看了下,有云函数、云存储及云数据库等功能,我这么简单的逻辑肯定够用了。我开始构思怎么去实现我的想法。这次我是下定了决心,要做成一个出来看看(事后才知道,有些事情很难,但你铁了心去做时,还是可以实现的,个人观点,勿喷)。

构思之后:


操作流程:

 

 


最终实现的界面如下:



前端使用Weui库,Markdown解析使用Towxml库。内容资源复制的golangplayground,那些天全部手动复制golang网站上的内容到Markdown文件,然后再上传到云存储。等弄完之后,手都是酸的。Weui全部使用的模板,我真的对前端不感冒,想稍稍改下样式都做不了,所以就在weui demo的模板上改改内容。Towxml入手很简单,第一它是真的简单,第二我用到它的功能简单,第三他的demo我完全可以复制。就这样,敲敲打打,简陋的第一版就上线了。

在上线之后,我又新增了两个golang库,还是复制黏贴,我发现现在的模式这样做太累了。

 

先来看看我的代码


没有看错,我就是那样写的。一个章节对应一个page,一个page对应一个file。手酸是有原因的。我新增一个章节,就得做如下操作,在书籍的data结构中添加章节数据,新建一个章节Page,建好之后,复制其它原有章节的代码,改下文件名称。再把写好的文件上传到云存储中。

 

手酸是活该的(哈哈)事后,我还在微信文档社区分享了我的经验

https://developers.weixin.qq.com/community/develop/article/doc/000082f9790060a3c5885a7f95d013

 

这里说第一个技巧,利用navigator的参数。


 

上面的链接里面说的很详细,我就不再叙述。改完之后,我只需要在书籍data中添加我新的章节数据,然后上传章节的Markdown文件到云存储就可以了。改之后的小程序包小了很多。

现在的小程序还是有缺陷的,我只能添加golang内容,不能添加java内容。因为它逻辑上只有两层:章节->内容。不能添加新的书籍,所以小程序需要再改,改成3层,在现有的界面前再添加一个书籍列表,后端不变。

 

改造之后的界面如下:


第二层

 


在上线之后,我发现一个新的问题,现在的小程序不能维护,不能在手机上添加内容,我有一个好的想法,或者一段自己感觉很厉害的代码,想分享给大家或想存储起来,我做不到,并且现在的内容是我复制的,网上一大片,除了做个搬运工,其它什么收获也没有。我现在的需求也在变化,我用它主要当工具来使用了,当我忘了某个类型写法时,上去看一眼,这时,感觉少了点东东,就是搜索,我又重新构建了一次。这次,前端使用漂亮的ColorUI。

 

这是最后实现的界面:



 

 


这次主要增加了关键的几个特性:

一、可搜索

章节内容可以根据关键字进行查询,查找自己感兴趣的内容。

二、可维护

可以添加内容,目前只能自己观看,若要分享,还需要到后台数据库更改状态才可以,这样也是为了保障内容的质量。

 

这次实现使用了云数据库。

在数据库中实现书籍-章节-内容之间的关系,不在像以前通过在小程序端写死了。增加了灵活性。

 

书籍,章节,内容之间的关系简单说下,书籍有标签,标签和现有编程语言对应,这个标签的作用就是在云存储中设置前缀文件夹的。章节绑定书籍ID,章节名称可以被搜索,章节ID为内容文件名。云存储中的文件路径就是标签+章节ID,文件内容是Markdown格式,暂不支持其它模式,Markdown中链接不起作用,图片需要用网络图片,且能访问才行。

 

因为没有文采,所以有点老太婆裹脚布 —— 又臭又长,构思了好多天,总感觉能写出很多东西,当落笔时,发现脑子里灰的。不管怎样,终于写完了。有志者事竟成,有了想法,Just do it!

 


最后一次编辑于  07-18  
点赞 3
收藏
评论

2 个评论

  • 
    
    07-18

    辛苦了,小程序生态越完善码农我们过得才会越好

    07-18
    赞同 1
    回复
  • Eden🇨🇳
    Eden🇨🇳
    07-18

    想法挺好的,刚试了下我提个建议,在每一章底部加入“下一节”按钮,现在看完要返回才能进入下一节

    07-18
    赞同
    回复 1
    • eagle
      eagle
      07-18
      你说的这个有点复杂,如果以前没有添加搜索的功能情况下,加入下一节比较好做,现在添加搜索之后,还是以工具为主,例如,我有一个知识点忘记,本着主题去的。
      07-18
      回复