摘要:
// 建议复制到编辑器里跑一下看看 function Model(tasksProperties){ } Model.create = function(init) { function Model(taskProperties) { if (this instanceof Model) { thi 阅读全文
摘要:
小程序里的自定义组件里是有数据监听器的,可以监听对应数据的变化来执行callBack,但是页面Page里没有对应的api就显的很生硬,比如某个数据变了(如切换城市)需要重新刷页面,如果不做监听,每次都要在数据变化的地方手动去调一次函数。 那么如何像vue那样在Page里实现 watch 和 comp 阅读全文
摘要:
页面结构如下图所示 场景描述:切换左侧tab的时候,右侧固定吸顶的元素可能是第一个,也可能是第X个,所有当点击了左侧tab之后,需要动态设置flatList的 stickyHeaderIndices bug1 - 部分安卓机器上切换完tab之后,动态改变了 stickyHeaderIndices,右 阅读全文
摘要:
JS二叉树的实现及前序遍历、中序遍历、后序遍历 // 二叉树的实现 function Node(data, left, right) { this.data = data; this.left = left; this.right = right; this.show = () => { retur 阅读全文
摘要:
记录下看到的一个CSS巧用,非常 有意思。 1 常规的处理方法 <style> .wrap { width: 40vw; border: 1px solid red; font-size:large; overflow:hidden; display:-webkit-box; -webkit-box 阅读全文
摘要:
bug1:页面上的某模块闪烁,或者部分区域白屏(其他区域良好),手按一下或点击下,又会展示出来。 原因:该模块区域,比如整个是一个View组件包着的内容,是 overflow:'hidden' 和 borderRadius 两个属性冲突导致,当需要圆角视图而内容区域又确实超出了内容,所以一定是需要溢 阅读全文
摘要:
众所周知:FlatList 是基于 ScrollView 封装的,底层都是 VirtualizedList 组件。安卓端是有提示的:ScrollView和FlatList是禁止嵌套的。 先上布局,最终做出来的显示页面如下: 简单分析下布局:整个页面是可以下拉刷新的,日历是吸顶的一个横向可滚动的Fla 阅读全文
摘要:
// 最长公共子前缀 var testStrList = ['abcd','abc','abcdmg','aggg'] function longCommon1(list){ let first = list[0] for(let i = 0;i < first.length;i++){ let s 阅读全文
摘要:
递归回溯法 function putNQueen(n) { let res = []; //最终存放结果的数组 // 核心依赖俩参数 rowIndex,当前想尝试在第几行上放皇后 // prev 上一次存放皇后的结果,初始值为 [],放的是对应的列值 // 三个数组,已放过的列的值、左斜 rowIn 阅读全文
摘要:
从公众号里看到一道异步题目,花了点时间看了下,挺有意思的。 const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms)); const subFlow = createFlow([() => delay(1000).t 阅读全文
摘要:
青蛙跳台阶 解法1: var numWays = function(n) { var memo = [1,1,2] var fn = function(m){ if(memo[m]){ return memo[m] } return memo[m] = (fn(m - 1) +fn(m-2)) % 阅读全文
摘要:
实现一个方法,拆解URL参数中queryString const url = 'http://sample.com/?a=1&b=2&c=xx&d=2#hash'; const result = { a: '1', b: '2', c: 'xx', d: 2 }; 常规解法 const disman 阅读全文