spa 小程序的研发随笔 (1) --- 前言
程序员文章站
2023-01-02 11:45:09
半年前跳槽, 新公司主要研发倾向于小程序的开发。由于之前并没有接触小程序,所以经过半年的实际开发,才敢来做一点笔记。 小程序提供很多组件给开发者使用,但是,实际使用中还是会有很多的问题。 老生常谈的不能使用npm开发??? (虽然,已知的很多小程序框架可以实现。例如:mpvue等。但是让我们先讨论讨 ......
半年前跳槽, 新公司主要研发倾向于小程序的开发。由于之前并没有接触小程序,所以经过半年的实际开发,才敢来做一点笔记。
小程序提供很多组件给开发者使用,但是,实际使用中还是会有很多的问题。
- 小程序的组件,经常不符合产品需求,又无法定制 (主要指tabbar,样式不可定制,跳转也需要使用特定的方法,难以统一处理)
-
老生常谈的不能使用npm开发??? (虽然,已知的很多小程序框架可以实现。例如:mpvue等。但是让我们先讨论讨论,以自己的能力来实现吧。)
提到 mpvue,就顺便多一句嘴。有段期间,有需求要找一套小程序的ui 框架,尝试过使用mpvue + elementui。 之后立即发现,elementui有大量的dom操作,在小程序环境中无法使用。
因为当时笔者已经自制了一套简单的预编译架构,所以笔者没有采用mpvue的框架进行开发。也就不对mpvue做讨论了。
(记得,最初mpvue是没有路由的。写文时,笔者正在给自己的spa 小程序编写路由组件而发愁,不知道mpvue是否已经做到了可以参考) - 事件与跳转 (主要指跳转其他小程序) 需要使用不同组件,以及button的open-type又种类繁多。很难做到用后台配置统一处理。
结合以上问题。所以,采用了一套简单的构架。主要,以 单页面(page)内引入多组件(component)用组件切换,模拟页面跳转,此外加入 预编译 + 整合封装不同tap事件的组件进行处理 + 模拟页面跳转的router管理。
之后,会先就预编译再做一套简单的讲解。当然,和以前的一样的,只发干货,不炒现饭,不做搬运工。有相关问题,欢迎指出。