微信小程序底层的实现原理分析
发表于:2025-01-16 作者:千家信息网编辑
千家信息网最后更新 2025年01月16日,这篇文章主要为大家展示了"微信小程序底层的实现原理分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"微信小程序底层的实现原理分析"这篇文章吧。从map组件
千家信息网最后更新 2025年01月16日微信小程序底层的实现原理分析
这篇文章主要为大家展示了"微信小程序底层的实现原理分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"微信小程序底层的实现原理分析"这篇文章吧。
从map组件说起
在今天公布的开发文档里,我们知道使用一个地图组件的时候是这样子的:
在之前的文件里,我们提到过这个文件是wxml文件,然后我们要用wxcc将其转换为virtual dom中的方法,如:
./wcc -d map.xml
它就会返回一个js的方法,如:
/*v0.7cc_20160919*/var $gwxcvar $gaic={}$gwx=function(path,global){function _(a,b){b&&a.children.push(b);}function _n(tag){$gwxc++;if($gwxc>=16000){throw 'enough, dom limit exceeded, you don\'t do stupid things, do you?'};return {tag:tag.substr(0,3)=='wx-'?tag:'wx-'+tag,attr:{},children:[]}}function _s(scope,env,key){return typeof(scope[key])!='undefined'?scope[key]:env[key]}...
插播一句:上面有一个count,很有意思$gwxc > 16000,这个就是dom数的count。超了就来个异常:enough, dom limit exceeded, you don't do stupid things, do you?,中文意思就是:你个愚蠢的人类,你是一个前端开发人员吗?
随后,在浏览器里调试一下:
JSON.stringify($gwx('map.wxml')('test'))
在小程序中是要这样调用的:
document.dispatchEvent(new CustomEvent("generateFuncReady", { detail: { generateFunc: $gwx('map.wxml') } }))
就会返回下面的结果:
{ "children": [ { "attr": { "covers": "", "latitude": "113.324520", "longitude": "23.099994", "markers": "", "style": "width: 375px; height: 200px;" }, "children": [], "tag": "wx-map" } ], "tag": "wx-page"}
看来这个名为wx-map的标签就是微信下的map标签,它是wx-page的children。然后让我们在WAWebview中搜索一下,就会发现一个很有意思的代码:
{ is: "wx-map", behaviors: ["wx-base", "wx-native"], template: '', properties: { latitude: {type: Number, reflectToAttribute: !0, observer: "latitudeChanged", value: 39.92}, longitude: {type: Number, reflectToAttribute: !0, observer: "longitudeChanged", value: 116.46}, scale: {type: Number, reflectToAttribute: !0, observer: "scaleChanged", scale: 16}, markers: {type: Array, value: [], reflectToAttribute: !1, observer: "markersChanged"}, covers: {type: Array, value: [], reflectToAttribute: !1, observer: "coversChanged"}, _mapId: {type: Number} }
它的behaviors中有一句:wx-native,这莫非就是传说中的native组件
以上是"微信小程序底层的实现原理分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
开发
程序
就是
环境
内容
文件
标签
组件
原理
底层
分析
有意思
代码
时候
篇文章
面的
方法
变动
学习
帮助
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
戴尔服务器网卡灯亮屏幕不显示
明日之后希望谷地服务器什么好卖
软件开发服务税务
网络安全防护技术就业
软件开发部署经理
泗洪环保网络技术保养
温州数据库培训哪里有
实习网络安全员工作
数据库中使用搜索引擎
中国中铁网络安全知识竞答
qt 数据库界面设计
网络安全态势感知方法有哪些
简述最常用的数据库系统
商品销售记账数据库
软件开发公司申请税收
新时代的网络及网络安全
百度怎样解除网络安全
校园网网络安全方案
河南服务器钣金机箱定制虚拟主机
eviews自带的数据库
软件开发支付问题
网络安全扁平化管理
石家庄数据库安全审计
河北网络服务器空间虚拟主机
降低服务器内存
psv游戏内存修改数据库
代抢系统服务器位置有限制
服务器安全卫士软件
国家网络安全治理方案
江苏网络安全审计硬件制造商