微信小程序首次官方分享的纪要
先交代备注:
- 这次有关小程序的分享只有技术的 QA环节,其他如产品、入口、流量、与公众号的整合等等,回答都是暂时无法给出答案或不确定;
- 小程序最终发布时间官方也还未确定,不过说应该就是近期;
- 小程序的分享环节不允许录像;
- 官方不会分享本次小程序的PPT,但是前排同学有拍照,已经统一按顺利放在结尾处,强烈推荐阅读;
- 图片较多,打开较慢,请有心理准备。
很久没参加技术相关的大会了,不过 11/23 特意去参加了微信官方组织的开发者培训班,日常安排如下:
当然,其实去听培训偶就是为了下午要分享的 微信小程序,但是没想到上午内容都非常的干货,确实有很多值得思考的地方,微信生态的商业化确实令人期待。
言归正传,这篇文章就是介绍微信小程序分享的纪要。
先分享段视频,内容是微小新程序的demo(比较模糊,凑活体会哈):
可以直观的看到微小程序的体验非常流畅。
ps:屁话,虽然用的是 Web的开发方式,但是最终的在 Client的效果是用原生实现,体验必须流畅。
当天的内容非常多,但是这里就重点介绍几个我觉得有意思的。
一、类 Web的开发方式、Native的体验效果的实现原理
其实最大的收获就是了解了小程序这套框架原理。
虽然自己有开发过几个 demo,也看到网上很多开源的项目。但是通过官方技术同学一点点的去深入剖析,进一步理解了实现方式。
WXML -> 编译为JS -> Virtual Tree -> DOM Tree
WXSS -> Compiler -> JS -> DPR -> CSS
ps:请重点关注 PPT中有关 View的那几页。
二、微信公众平台的历史包袱
注册小程序的时候发现,不能和公众号名称一样,我那时心想着不是坑爹么。
官方的解释是:为了减少运营风险,因为如果可以一致,肯定会引起大量的名称抢注。小程序的注册账号不可以和公众号、开放平台、个人微信号的邮箱重复。
我当初就直接注册了一个新 QQ,然后用新 QQ的邮箱注册的。
官方的解释是自己做的不对,而且不光小程序,公众号同样有这个问题,都是历史包袱导致,原因是一个账号只能关联一个服务,不能关联多个。
三、被吐槽的开发者工具
如果你关注小程序开发,那么吐槽最多就是这个开发者工具。同样,我也多次被开发者工具弄的欲哭无泪。
开发者工具和客户端回归的样式不一样?
不一样就对了,因为暂时就是没法保证一样。
开发者工具是基于 nwjs,其实就是 Chrome;而 Client中其实使用的是 JSCore(IOS)和X5 JS解析器(Android)。
从基础环境上就不是一个东西。
比如你再开发者工具中的 .js文件输入 document或者windows之类的,特么它还给你 Autocomplete,你别天真的以为可以使用这些对象,你说这受的鸟么。
虽然一直在黑开发者工具,但是还是替他多解释一句吧。官方表示:暂时就一个全人力在支持开发者工具...
所以不好用的原因一句定位了,这个锅背的不容易哈~
四、请用构建的方式开发小程序
想用 node mudule?
想用 ES6?
想用 SASS?
想...
好吧,不要想太多,这些都是需要开发者自己去用构建工具搞定的。
PS:听官方同学透露,大多数的小程序开发都是用构建工具来实现。
五、滑动事件和 Web中有区别
小程序中的 scroll 事件不好使。原因是小程序其实是客户端界面,不是在浏览器里,所以没有这个滑动事件。
但是小程序有提供滑动到底部和头部下拉的 JS接口,分别为 onReachBottom和 onPullDownRefresh。
影响:图片的 lazyload不要想啦。
五十张会议 PPT记录,请查收。
微信小程序暂时哪哪都不美好,但是微信的生态确实预示着很多互联网的未来。
就这样,over.
微信小程序首次官方分享的纪要的更多相关文章
- 微信小程序实例:分享给一个人还是分享到群的判断代码
微信小程序的分享功能,在最新版库的ide上已经不能拿到分享回调了,官方api也删除了对应的回调函数,看样子是砍掉了,不过真机测试还是可以的,话不多说,上代码: /* // 分享功能回调 onLoad: ...
- 微信小程序之生成图片分享
通过社交软件分享的方式来进行营销小程序,是一个常用的运营途径.小程序本身支持直接将一个小程序的链接卡片分享至微信好友或微信群,然后别人就可以通过点击该卡片进入该小程序页面.但是小程序目前不支持直接分享 ...
- 规范抢先看!微信小程序的官方设计指南和建议
基于微信小程序轻快的特点,我们(微信官方)拟定了小程序界面设计指南和建议. 设计指南建立在充分尊重用户知情权与操作权的基础之上.旨在微信生态体系内,建立友好.高效.一致的用户体验,同时最大程度适应和支 ...
- 【微信】2.微信小程序开发--官方开发工具使用说明
承接第一篇 =============================================== 关于微信小程序开发使用IDE,曾经自己动摇过. 到底是采用 微信官方小程序开发工具 WebS ...
- 微信小程序背景音乐官方实例代码无效问题解决及音乐src获取方法
最近在学习微信小程序时遇到了个问题:官方的背景音乐的api实例代码中的音乐src不管用(可能有期限,后面的方法获取的src同样可能有期限),因此本人只能自己去寻找办法获取src,现将方法记录在下面.( ...
- 微信小程序「官方示例代码」浅析【上】
从某个微信群里,拿到了这个IDE的下载地址,然后就有了这个: 根本登不上去,怎么办,怎么办呢? 看代码啊... 反正我又没有保密协议,解压缩一看NodeWebkit + React: 好啦 ,逛逛呗, ...
- 微信小程序,页面分享
onShareAppMessage: function () { return { title: '微信小程序联盟', desc: '最具人气的小程序开发联盟!', path: '/page/user ...
- 微信小程序之生成图片分享 二维码分享 canvas绘制
如果本文对你有用,请爱心点个赞,提高排名,帮助更多的人.谢谢大家!❤ 如果解决不了,可以在文末进群交流. 添加画布 首先,在小程序里进行绘图操作需要用到<canvas>组件,步骤大致分为以 ...
- 微信小程序中的分享事件
小程序的分享 onShareAppMessage(options) 在页面的js文件中定义了 onShareAppMessage 函数时,页面可以表示改页面可以转发.可以在函数中设置页面转发的信息 ...
随机推荐
- 初识Hadoop、Hive
2016.10.13 20:28 很久没有写随笔了,自打小宝出生后就没有写过新的文章.数次来到博客园,想开始新的学习历程,总是被各种琐事中断.一方面确实是最近的项目工作比较忙,各个集群频繁地上线加多版 ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...
- SignalR系列续集[系列8:SignalR的性能监测与服务器的负载测试]
目录 SignalR系列目录 前言 也是好久没写博客了,近期确实很忙,嗯..几个项目..头要炸..今天忙里偷闲.继续我们的小系列.. 先谢谢大家的支持.. 我们来聊聊SignalR的性能监测与服务器的 ...
- AngularJs之九(ending......)
今天继续angularJs,但也是最后一篇关于它的了,基础部分差不多也就这些,后续有机会再写它的提升部分. 今天要写的也是一个基础的选择列表: 一:使用ng-options,数组进行循环. <d ...
- Python标准模块--Iterators和Generators
1 模块简介 当你开始使用Python编程时,你或许已经使用了iterators(迭代器)和generators(生成器),你当时可能并没有意识到.在本篇博文中,我们将会学习迭代器和生成器是什么.当然 ...
- Hive安装配置指北(含Hive Metastore详解)
个人主页: http://www.linbingdong.com 本文介绍Hive安装配置的整个过程,包括MySQL.Hive及Metastore的安装配置,并分析了Metastore三种配置方式的区 ...
- 深入研究Visual studio 2017 RC新特性
在[Xamarin+Prism开发详解三:Visual studio 2017 RC初体验]中分享了Visual studio 2017RC的大致情况,同时也发现大家对新的Visual Studio很 ...
- Linux上如何查看物理CPU个数,核数,线程数
首先,看看什么是超线程概念 超线程技术就是利用特殊的硬件指令,把两个逻辑内核模拟成两个物理芯片,让单个处理器都能使用线程级并行计算,进而兼容多线程操作系统和软件,减少了CPU的闲置时间,提高的CPU的 ...
- 游戏AI系列内容 咋样才能做个有意思的AI呢
游戏AI系列内容 咋样才能做个有意思的AI呢 写在前面的话 怪物AI怎么才能做的比较有意思.其实这个命题有点大,我作为一个仅仅进入游戏行业两年接触怪物AI还不到一年的程序员来说,来谈这个话题,我想我是 ...
- angluarjs2项目生成内容合并到asp.net mvc4项目中一起发布
应用场景 angular2(下文中标注位NG2)项目和.net mvc项目分别开发,前期采用跨域访问进行并行开发,后期只需要将NG2项目的生产版本合并到.net项目. NG2项目概述 ng2项目采用的 ...