用node.js向百度推送hexo博客sitemap所有链接

背景

百度提供了4种方式用于提交网站链接,分别是主动推送(实时),自动推送,sitemap和手动提交,其中主动推送是最快的。自动摧送是加js在页面上,但要打开页面才能执行推送,sitemap没爬到时也没有执行推送,手动提交还要登陆到百度网站上面去提交效率太低。 继续阅读“用node.js向百度推送hexo博客sitemap所有链接”

Node.js 生成微信数字签名[SHA1算法]

前言

几年前搞微信公众平台开发时练习写过一段使用node.js生成微信数字签名的代码。现在重新看看觉得比较经典,作为前端来说,多了解一下后端平时干的事,可以从更高的角度来加深对微信公众平台开发的理解。 继续阅读“Node.js 生成微信数字签名[SHA1算法]”

关于Virtual Dom的那些事(五)

前言

上一篇《关于Virtual Dom的那些事(四)》主要是介绍了Thunk概念,加上之前所有有的内容都只是snabbbom的前菜,本篇直接分析其200 SLOC(Source Lines of Code),大概200行的核心代码。并附上其它剩余所有代码的源码分析。 继续阅读“关于Virtual Dom的那些事(五)”

Hybrid APP 开发中 APP 与 H5 如何通讯?

前言

搞 APP 开发,如何设计好一套 APP 与 Webview H5 通讯的机制非常重要,如果稍微使用及了解一下就会知道,APP 与 webview 之前通讯主要是通过 javascript 来进行,如果再深入了解一下就会理解其中的原理。 继续阅读“Hybrid APP 开发中 APP 与 H5 如何通讯?”

调试App的Webview里面的h5网页的几种最有效方式

前言

在做APP开发时,为了增加功能的灵活性、便即时更新内容和减少客户端开发人员的工作量不免要嵌入许许多多的H5网页,这就是我们通常所说的Hybrid APP开发。在这过程中,我们经常要对h5里面的js及html代码进行调试,如果我们用最傻瓜式的方式来调试可以使用js的alert把想要调试的内容打印出来。但这种方式非常不灵活也不便于即时更新代码进行调试。 继续阅读“调试App的Webview里面的h5网页的几种最有效方式”

关于Virtual Dom的那些事(四)

前言

上一篇《关于Virtual Dom的那些事(三)》主要是介绍了生成VNode的几种方式。翻一翻snabbdom的源码,我看还可以看到一个概念-Thunk,Thunk是什么?在react全家桶中经常会看到Thunk这概念,在计算机语言中是传名调用的意思,但如果按我个人的理解就是中间件的概念,更通俗一点就是在某函数的每次输入与输出之间,预加一个自定义的拦截处理函数(thunk函数), 继续阅读“关于Virtual Dom的那些事(四)”

关于Virtual Dom的那些事(三)

前言

上一篇《关于Virtual Dom的那些事(二)》主要是介绍了VNode。其实生成VNode的方式在snabbdom中除了VNode自身的最基本的构造函数vnode()外,还有两种方式来生成。一种是toVNode(即把原生的Dom转化成为VNode),还有一种是非常有名的h函数(hyperscript最原始的定义是“Create HyperText with JavaScript.”)。本节主要是分析一下这两种函数在snabbdom中的源码。 继续阅读“关于Virtual Dom的那些事(三)”

关于Virtual Dom的那些事(二)

前言

上一篇《关于Virtual Dom的那些事(一)》在最后之处讲到Virtual Dom 主要涉及的概念。本篇将紧跟着并结合snabbdom的源码来讲讲其中的第一点“VNode”。既然是Virtual Dom,那当然其结构里面的Node节点相应也有VNode的概念。其组织形式按理来说应该与真实的Node节点类似才对。

真实Dom由些什么组成呢?

继续阅读“关于Virtual Dom的那些事(二)”

关于 Virtual Dom 的那些事(一)

前言

一直想写点关于 Virtual Dom 的东西。以前刚开始接触 react 的时候就已经接触到了 Virtual Dom 和 diff 算法的概念,但一直觉得这些都是很复杂,很高深的东西。后面使用 react,使用 Vue 多了,逐渐觉得这些概念没那么陌生了。但还是觉得各种开源的 Virtual Dom,React 等对 Virtual Dom 的实现的源码不太容易读懂,源码的注释不全是一大障碍,直到遇到了 snabbdom,才开始觉得有深究其源码的冲动。

为什么是 snabbdom?

继续阅读“关于 Virtual Dom 的那些事(一)”