小程序无需下载,通过搜索和扫一扫就可以打开,毫不夸张的说小程序已经成为了我们生活中的一部分,对于中小企业它有着巨大的优势,由于小程序有微信这个庞大的流量入口,因此获取流量的方式也变得简单了,不像APP一样,需要巨大的推广费,且适用于各个行业。因此小程序开发就成为前端开发工程师必备技能。
微信小程序采用 JavaScript、WXML、WXSS 三种技术进行开发,从技术讲和现有的前端开发差不多,但深入挖掘的话却又有所不同。
JavaScript:首先 JavaScript 的代码是运行在微信 App 中的,并不是运行在浏览器中,因 此一些 H5 技术的应用,需要微信 App 提供对应的 API 支持,而这限制住了 H5 技术的应用,且 其不能称为严格的 H5,可以称其为伪 H5,同理,微信提供的独有的某些 API,H5 也不支持或支 持的不是特别好
WXML:WXML 微信自己基于 XML 语法开发的,因此开发时,只能使用微信提供的现有 标签,HTML 的标签是无法使用的。
WXSS:WXSS 具有 CSS 的大部分特性,但并不是所有的都支持,而且支持哪些,不支 持哪些并没有详细的文档。
另外微信的架构,是数据驱动的架构模式,它的 UI 和数据是分离的,所有的页面更新,都需要通过对数据的更改来实现。小程序分为两个部分 webview 和 appService。其中 webview 主要用来展现 UI,appService 有来处理业务逻辑、数据及接口调用。它们在两个进程中运行,通过系统层 JSBridge 实现通信, 实现 UI 的渲染、事件的处理。