微信小程序框架原理是怎样的?
微信小程序框架原理是怎样的?每种框架,技术的实现都是基于某些原理的,像如今这么火热的小程序又是基于什么原理来实现的呢?下面一起随小编看看吧。
微信小程序框架原理是怎样的?
我们可以以map小程序组件为例说下原理是怎么样的。
在小程序官方公布的开发文档里,我们知道使用一个地图组件的时候是这样子的:
在开始的时候,我们说过这个文件是小程序wxml文件,然后我们要用wxcc将其转换为virtual dom中的方法,如:
它就会返回一个小程序js的方法,如:
提醒大家一句:上面有一个count,很有意思$gwxc > 16000,这个就是dom数的count。超了就来个异常:enough, dom limit exceeded, you don't do stupid things, do you?,中文意思就是:你个愚蠢的人类,你是一个前端开发人员吗?
随后,在浏览器里调试一下:
在微信中是要这样调用的:
就会返回下面的结果:
从这里可以判断出wx-map的标签就是微信下的map标签,它是wx-page的子标签。然后让我们在WAWebview中搜索一下,就会发现一个很有意思的代码:
它的behaviors中有一个单词:wx-native,这就是小程序里面的native组件。
顺便再看一个video是不是也是一样的?
这里就讲解这么多了,大家自己试着理解领悟下。可以肯定的是:
map标签在开发的时候会变成HTML + CSS
map标签能够使用在微信上其实就是类似于Cordova的形式调用Native组件
再接着说,virtual dom的事,回到示例代码里的map.js:
js中只内置了数据,其余部分都是根据上面的值变动的observer,如:
_updatePosition
_hiddenChanged
这种小程序代码的感觉比React更进了一步的节奏,本来你还需要编码来观察state,现在只需要state变动了就可以了。
所以,总的说来,原理就是Html变wxml,Css变wxss,其他部分就是h5和js的组合,没有什么特别的创新之处,还要提醒一点的是jquery之类的框架都不能用了。
每个程序代码的原理都不是这么三言两语就能说清楚的,小编在这里只是简单的介绍了微信小程序框架原理是怎样的,希望给大家一点参考,更多精彩就在微小乔的网站!
相关推荐:
微信小程序轮播框架如何单方向轮播?
微信小程序布局框架怎么开发?
微信小程序第三方框架怎么开发?
上一篇:小程序微信支付宝红包哪个好?
下一篇:微信小程序数字格式问题怎么解决?