惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
Threatpost
aimingoo的专栏
aimingoo的专栏
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
T
Tailwind CSS Blog
J
Java Code Geeks
博客园_首页
Google Online Security Blog
Google Online Security Blog
Hugging Face - Blog
Hugging Face - Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
I
Intezer
P
Palo Alto Networks Blog
V
Vulnerabilities – Threatpost
雷峰网
雷峰网
O
OpenAI News
SecWiki News
SecWiki News
小众软件
小众软件
酷 壳 – CoolShell
酷 壳 – CoolShell
美团技术团队
N
News | PayPal Newsroom
Project Zero
Project Zero
Forbes - Security
Forbes - Security
IT之家
IT之家
A
Arctic Wolf
WordPress大学
WordPress大学
Jina AI
Jina AI
T
Tor Project blog
博客园 - 三生石上(FineUI控件)
S
Secure Thoughts
Google DeepMind News
Google DeepMind News
Attack and Defense Labs
Attack and Defense Labs
博客园 - 聂微东
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
P
Privacy International News Feed
Cloudbric
Cloudbric
G
GRAHAM CLULEY
博客园 - 叶小钗
H
Hacker News: Front Page
腾讯CDC
量子位
Help Net Security
Help Net Security
人人都是产品经理
人人都是产品经理
C
Cyber Attacks, Cyber Crime and Cyber Security
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
宝玉的分享
宝玉的分享
爱范儿
爱范儿
L
Lohrmann on Cybersecurity
Hacker News - Newest:
Hacker News - Newest: "LLM"
Recorded Future
Recorded Future
C
CERT Recently Published Vulnerability Notes

博客园 - 聂微东

春节假期小结 「认知」与「说服」 - 聂微东 - 博客园 YY一下十年后的自己 对于前端,「微信小程序」其实不美好 「标准」的 JS风格 年度科技脱口秀来了 提问是门艺术 如何做好技术串讲 「微信小程序」来了 公众号 -「前端攻略 开光篇」 - 聂微东 《拖拉一点也无妨》小记 2016过半 - 聂微东 - 博客园 Mac 软件篇 - 聂微东 Chrome插件整理 - 聂微东 - 博客园 gulp使用小结(二) - 聂微东 - 博客园 如果我去创业 gulp使用小结(一) 2015简单总结 Atom使用纪要 - 聂微东 - 博客园 Express4 启航指南
微信小程序首次官方分享的纪要
聂微东 · 2016-11-30 · via 博客园 - 聂微东

微信小程序首次官方分享的纪要

2016-11-30 16:44  聂微东  阅读(3832)  评论()    收藏  举报

先交代备注:

  1. 这次有关小程序的分享只有技术的 QA环节,其他如产品、入口、流量、与公众号的整合等等,回答都是暂时无法给出答案或不确定;
  2. 小程序最终发布时间官方也还未确定,不过说应该就是近期;
  3. 小程序的分享环节不允许录像;
  4. 官方不会分享本次小程序的PPT,但是前排同学有拍照,已经统一按顺利放在结尾处,强烈推荐阅读;
  5. 图片较多,打开较慢,请有心理准备。

很久没参加技术相关的大会了,不过 11/23 特意去参加了微信官方组织的开发者培训班,日常安排如下:

当然,其实去听培训偶就是为了下午要分享的 微信小程序,但是没想到上午内容都非常的干货,确实有很多值得思考的地方,微信生态的商业化确实令人期待。

言归正传,这篇文章就是介绍微信小程序分享的纪要。
先分享段视频,内容是微小新程序的demo(比较模糊,凑活体会哈):

可以直观的看到微小程序的体验非常流畅。
ps:屁话,虽然用的是 Web的开发方式,但是最终的在 Client的效果是用原生实现,体验必须流畅。


当天的内容非常多,但是这里就重点介绍几个我觉得有意思的。

一、类 Web的开发方式、Native的体验效果的实现原理

其实最大的收获就是了解了小程序这套框架原理。
虽然自己有开发过几个 demo,也看到网上很多开源的项目。但是通过官方技术同学一点点的去深入剖析,进一步理解了实现方式。

WXML -> 编译为JS -> Virtual Tree -> DOM Tree
WXSS -> Compiler -> JS -> DPR -> CSS

ps:请重点关注 PPT中有关 View的那几页。

二、微信公众平台的历史包袱

  1. 注册小程序的时候发现,不能和公众号名称一样,我那时心想着不是坑爹么。
    官方的解释是:为了减少运营风险,因为如果可以一致,肯定会引起大量的名称抢注。

  2. 小程序的注册账号不可以和公众号、开放平台、个人微信号的邮箱重复。
    我当初就直接注册了一个新 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.