小程序通用转译框架娜娜奇1.0.4发布

2018-12-29
阅读 2 分钟
5.2k
娜娜奇在公司内部已经成功发布两个APP了,一个是支付宝小程序,一个是百度小程序,鉴于它已经好成熟了,我们决定提供更便捷的方式给普通用户使用,于是有了nanachi-cli。

useEffect与useLayoutEffect

2018-12-24
阅读 5 分钟
8k
React Hook让无狀态组件拥有了许多只有有狀态组件的能力,如自更新能力(setState,使用useState),访问ref(使用useRef或useImperativeMethods),访问context(使用useContext),使用更高级的setState设置(useReducer),及进行类似生命周期的阶段性方法(useEffect或useLayoutEffect)。

百度小程序遇到的问题

2018-12-05
阅读 1 分钟
2.5k
模板中的s-for指令不支持数组字面量以及带中括号的属性表达方式, s-for="{{ [1,2,3,4] }}"或s-for="{{aaa['xxx'] }}"

快应用的开发注意点

2018-12-04
阅读 3 分钟
4.5k
随着公司越来越多业务线开发快应用,我们总结一下我们这个月开发快应用的心得及给出必要的指导。因为快应用与我们公司的预装策略有关,我们想要手机商预装我们的去哪儿App,那么我们就得帮他们推广一下他们的快应用。至于快应用是否能比微信小程序带来更多流量,那是另一回事了。

anu小程序快速入门

2018-09-07
阅读 5 分钟
9.3k
众所周知,微信推出小程序以来,可谓火遍大江南北,就像当前互联网兴起时,大家忙着抢域名与开私人博客一样。小程序之所以这么火,是因为微信拥有庞大的用户量,并且腾讯帮你搞定后台问题及众多功能问题(如分享,支付,视频播放,文件上传),相当于你一个人也能做一个公司的事情。在手机上,每个人不可能装超过100个以...

React转微信小程序:双模板机制,React.template为小程序提供data

2018-07-12
阅读 6 分钟
4k
这是本系列的最后一篇,因为以后就是机密了。但这篇会公开一些非常有用的思路。小程序封死了操作DOM的可能性,并且也不让我们操作视图,所有与视图有关的东西一律接触不了。而它的自定义组件是非常恶心,基本不配叫组件,不能继承叫什么组件。因此我们使用它更早期的动态模板技术,template。

React v16.3.0: New lifecycles and context API

2018-03-30
阅读 4 分钟
6.3k
几天前,我们写了一篇关于即将到来的对我们的传统生命周期方法的变更的文章,包括逐步迁移策略。在React 16.3.0中,我们添加了一些新的生命周期方法来帮助迁移。我们还引入了新的API,用于长时间请求的特性:一个官方的上下文API、一个ref转发API和一个更语意化的ref API。

高性能迷你React框架 anu1.3.0 发布

2018-03-06
阅读 2 分钟
5k
自React16起,相继推出createContext,createPortal, createRef与createResource等新API,表明官方正积极由纯view库向大而全的框架演变,它将会越来越好用。一些迷你库可能跟不上步伐,现在也只有anujs有这实力跟进。

javascript 哈希表

2018-02-05
阅读 10 分钟
21.6k
哈希表(hash table )是一种根据关键字直接访问内存存储位置的数据结构,通过哈希表,数据元素的存放位置和数据元素的关键字之间建立起某种对应关系,建立这种对应关系的函数称为哈希函数

React16.2的fiber架构(2)

2018-02-03
阅读 16 分钟
5.2k
scheduleWorkImpl的最开头有一个recordScheduleUpdate方法,用来记录调度器的执行状态,如注释所示,它现在相当于什么都没有做

React16.2的fiber架构

2018-02-02
阅读 17 分钟
11k
在React16中,虽然也是通过JSX编译得到一个虚拟DOM对象,但对这些虚拟DOM对象的再加工则是经过翻天覆地的变化。我们需要追根溯底,看它是怎么一步步转换过来的。我们先不看什么组件render,先找到ReactDOM.render。在ReactDOM的源码里,有三个类似的东西:

javascript 前缀Trie

2018-01-27
阅读 7 分钟
7.6k
前缀Trie, 又叫字符Tire, trie来自单词retrieval, 一开始念作tree,后来改念try, 毕竟它与树是不一样的东西。网上许多文章都搞混了trie与树。 trie是通过”边“来储存字符的一种树状结构,所谓边就是节点与节点间的连接。trie每条边只能存放一个字符。

javascript 哈希树

2018-01-26
阅读 3 分钟
2.4k
n个不同的质数可以“分辨”的连续整数的个数和他们的乘积相等。“分辨”就是指这些连续的整数不可能有完全相同的余数序列。(这个定理的证明详见:[链接])

javascript 后缀数组

2018-01-26
阅读 7 分钟
5.3k
后缀数组是处理字符串的利器, 它本身涉及许多辅助概念. 基本概念 1.1子串 表示字符串的某一小段, 如awbcdewg拥有 awbc, awbcd, awbcde等子串。 1.2后缀 后缀是字符串从某个位置起到达末尾的一种特殊子串。后缀可以等于自身,相等于从一个字符开始. 假令我们设计一个取后缀的函数, 它可以这样实现: {代码...} 后缀必须...

计数排序,桶排序与基数排序

2018-01-21
阅读 9 分钟
10.1k
一般算法能做到O(logn),已经非常不错,如果我们排序的对象是纯数字,还可以做到惊人的O(n)。涉及的算法有计数排序、基数排序、桶排序,它们被归类为非比较排序。

javascript 最长公共子序列

2018-01-16
阅读 8 分钟
15.9k
最长公共子序列(Longest Common Subsequence LCS)是从给定的两个序列X和Y中取出尽可能多的一部分字符,按照它们在原序列排列的先后次序排列得到。LCS问题的算法用途广泛,如在软件不同版本的管理中,用LCS算法找到新旧版本的异同处;在软件测试中,用LCS算法对录制和回放的序列进行比较,在基因工程领域,用LCS算法检查...

javascript背包问题详解

2018-01-13
阅读 16 分钟
29.5k
打算好好学一下算法,先拿背包问题入手。但是网上许多教程都是C++或java或python,大部分作者都是在校生,虽然算法很强,但是完全没有工程意识,全局变量满天飞,变量名不明所以。我查了许多资料,花了一个星期才搞懂,最开始的01背包耗时最多,以前只会枚举(就是普通的for循环,暴力地一步步遍历下去),递归与二分,...

高性能迷你React框架 anu1.2.2 发布

2017-12-29
阅读 1 分钟
2.9k
明年的精力就集中异步渲染与后端渲染上。anujs的体积经过几个版本的迭代,体积有所增大24kb(没有压缩的情况),但还是远远少于React+ReactDOM,因此无论用在移动端还是PC还是非常有优势。其次它是市场上唯一支持React16特征的库。

高性能迷你React框架 anu1.2.1 发布

2017-12-27
阅读 2 分钟
2.6k
anu1.2.1这次更新主要是改善了对焦点的处理及react16.2的Fragment语法糖的支持 优化fiberizeChildren的性能,将原方法内部用到函数与对象提到全局上来,这就比官方的对象池技术更能提升性能。 修复受控组件在textarea, radio的BUG,将受控事件放到用户事件后集中执行 添加焦点系统的支持 解决多次引入React时,事件系统...

React深度编程:受控组件与非受控组件

2017-12-17
阅读 5 分钟
11k
受控组件与非受控组件在官网与国内网上的资料都不多,有些人觉得它可有可不有,也不在意。这恰恰显示React的威力,满足不同规模大小的工程需求。譬如你只是做ListView这样简单的数据显示,将数据拍出来,那么for循坏与{}就足够了,但后台系统存在大量报表,不同的表单联动,缺了受控组件真的不行。

高性能迷你React框架 anu1.2 发布,支持React16的三大特性

2017-12-16
阅读 2 分钟
2.3k
anu已经有两个月没有发布了,经过1.1.5-pre, 1.1.5-pre2, 1.1.5-pre3, 1.1.5-pre4, 1.1.5-pre5, 1.1.5-pre6, 最终放弃了1.1.5, 改成1.2. 因为内部变动非常多,受控组件与非受控组件那块完全重写,只差一个case没有跑通(这部分的测试代码有2000多行)。支持React1.6 的三大特征,组件支持返回数组,传送门与错误边界。

preact的异步渲染

2017-10-21
阅读 4 分钟
2.7k
preact的性能听说是很快,这在于一个作弊机制,它需要更多时间才走完官方React 或 anu的任务。 {代码...} 注意,preact的对于组件虚拟DOM不会返回组件实例,需要hack一下。输出如下: {代码...}

高性能迷你React框架anujs1.1.4发布

2017-10-20
阅读 2 分钟
2.2k
本周在支持机票的项目中对anujs做了大量改进,包括性能上与结构上的改进。与1.1.3一样,还是差一个组件就完全兼容阿里的antd UI库。

高性能迷你React框架anujs1.1.3发布

2017-10-08
阅读 2 分钟
3.5k
anujs现在只差一个组件(mention)就完全支持阿里的antd UI库了。一共跑通346个测试, 应该是全世界最接近官方React的迷你框架了。

高性能迷你React框架anujs1.1.2发布

2017-10-01
阅读 2 分钟
3.7k
在ref机制,owner机制,虚拟DOM更新机制,context传递机制,SVG生成策略上大大重构。是有史以来最多的更新级。但工作还没有完成,只是怕更新太多做了一次短暂的休整。

去哪儿网迷你React的研发心得

2017-09-19
阅读 6 分钟
22.5k
去哪儿网迷你React是年初立项的新作品,在这前,去哪儿网已经深耕多年,拥有QRN(react-native的公司制定版),HY(基于React的hybird方案), yo(基于React的移动UI库),QRN-web(基于React的三端合一移植方案),此外,像机票等部门也大规模将React用于前台页面,后台页面就更不在话下。

高性能迷你React框架anujs1.1.0发布

2017-08-28
阅读 1 分钟
4.9k
本版本对setState与forceUpdate内部依赖的setStateImpl进行了重构,性能稳定在60pfs之上。并且将组件实例的所有内部方法与属性都改成以___开头。

高性能迷你React框架anu发布

2017-06-05
阅读 3 分钟
9.1k
随着react的流行,针对其改良方案也逐渐增多起来。有的在体积上进行优化,有的在性能上进行优化,有的在两者上做努力。anu就是最后一种情况。

anu,一个无痛实践React的迷你React框架

2017-03-07
阅读 3 分钟
9.6k
近年来,冒出大量MVVM框架,但它几乎无一例外依赖于babel, webpack等编译或手脚架,这让小公司出身的前端们望洋兴叹。因此小城市的前端们,没有高手带着,许多培训班出身,或自学成才转行,如果引用react, ng2这类框架无异于自杀。出问题,webpack配置问N个群都没有问题。依赖于编译的框架也很难调试。

EBNF

2017-02-20
阅读 1 分钟
2.4k
D := '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' //单个数字DL := D | D DL //非负整数(连续数字)FN := DL | DL '.' DL //实数S := '-' FN | FN //有理数