关于模块化的再次思考

之前关于模块化只是commonJS、amd、es6模块化这些,今天受一篇文章 — 每日优鲜供应链前端团队微前端改造 - 掘金 的启发,发现之前对模块化的概念只是局限于单个项目内,模块化应该上升至项目 — 微前端的诞生背景。 想起之前做后台时有个需求是要接入另外个系统的某些功能,当时能想到的最简单的解决方案是嵌入iframe,打开别的系统,其中鉴权完全由后端控制,体验不完美,因为iframe内的dom无法控制。如果项目模块化,是否会有更好的接入方案。 下面再捋下模块化相关概念。 一般说模块化,都是js模块化。 浏览器由HTML、CSS、JS组成开发,页面渲染DOM,出现JQuery,可...

阅读全文

微信小程序转支付宝小程序差异

记录微信转支付宝小程序之间的差异。 公司写了一套gulp脚本,能使支付宝小程序支持大部分微信小程序语法,但还是有些许需手动兼容的差异。 注1:由于小程序api迭代较快,本文仅表示当前最新版本之前差异。 注2: 关于公司抹平差异化的脚步,单独再写一篇说明吧 标签模版类 微信 支付宝 wx:if a:if <i /> <icon /> <span /> <text /> 说明: 支付宝的 <icon /> 不支持绑定事件,得外面包一层 <view /> 或换别的标签 a:if在a:...

阅读全文

H5使用Canvas绘制手写签名

要绘制手写签名,并保存图片似乎只能用Canvas了,且在手机端HTML5还需处理IOS的触底滚动回弹(橡皮筋效果)。 主要技术点为: Canvas绘制轨迹、重置 手写时阻止网页滚动 Canvas画布屏幕自适应 Canvas保存图片 看上去主要还是要克服Canvas。 技术栈: Vue Canvas绘制轨迹、重置1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727...

阅读全文

危机意识

危机意识是指对紧急或困难关头的感知及应变能力。 危机来自外部与内部。 从外部环境的不可控性及内部条件的可变性,均可看到危机是客观存在的。危机意识的前提是稳步发展,市场永远充满了变数,只有时刻保持居安思危的心态,正视缺点、不断创新、永不放弃,才有可能使基业长青。 目前大环境局势不太好。 什么是自由能真正影响行动的关键,我们要的自由,最根本不是财富,财富只是工具,我们要的自由,本质是时间的自主权 个人财富自由,指的是某个人再也不用为了满足生活必需而出售自己的时间了 专注成长而不是专注成功 财富自由不是终点,那只是通往终点过程中的一个里程碑而已 精明的交易员在进场交易之前,都要知道两个最...

阅读全文

JS函数式编程

通过抽象各种元操作函数提高代码可复用性 函数式编程的目的是使用函数来抽象作用在数据之上的控制流和操作,从而在系统中消除副作用并减少对状态的改变 函数式编程 Functional Programming 都是表达式(Expression) 不会是陈述式(Statement)。参考Expressions versus statements in JavaScript 表达式: 运算过程,一定有返回值 陈述式:表现某个行为,如赋值。

阅读全文

RN Keyboard dismiss

公司用的RN锁定0.30,很多新功能或者老bug只能手动修复,蛋疼。 现象当点击TextInput键盘弹起时,如果此时后端报错,input不失焦,键盘也不隐藏,emmmmm 解法TextInput1blurOnSubmit or 1TextInput.State.blurTextInput(TextInput.State.currentlyFocusedField()) Keyboard手动调用 keyboard.dismiss() otherref github-issue-Keyboard won’t dismiss when area outside of keyboard ...

阅读全文

数组去重

今天处理下数组的去重。 基础款要求 12输入in ===> list = [1,2,3,1]输出out ===> unionList = [1,2,3] 进阶要求: 12输入in ===> list = [{x: 1, y: 2},{x: 1, y: 1},{x: 1, y: 1}]输出out ===> unionList = [{x: 1, y: 2},{x: 1, y: 1}] 究极体要求: 1234567891011121314151617181920212...

阅读全文

React Native Keyboard Covering Inputs

当键盘遮挡住被输入TextInput时,尝试过几种解决思路: 外侧包一层ScrollView,然后通过ScrollView的scrollTo()来滚到键盘上方,其中的难点在于 怎么计算需要滚动的值,原lego里的Scroll + Input有对应实现,但有bug💔 用react native的KeyboardAvoidingView组件,但在需要用ScrollView的地方很诡异,遂放弃 用transform向Y轴平移啊,还不用动TextInput,结合 animation提升用户体验,简直爽得起飞🛫️,😄 20190531更新:1. 实测IOS对动画有一定延时。。 2. ...

阅读全文

moment.js踩的周选择坑

moment.js是一个强大的JavaScript日期处理类库,加上antd与moment.js的强耦合,必须用。 故事的开始要从前段时间做的一个需求的其中一个功能: 用户可选择默认周期为“下周(下周一~下周日)”,支持当前周往后再选4周(W+1 ~ W+4)当时的实现四周日期如下:123456789setWeekList(howMuch = 1) { if (howMuch === 0) return; const item = { start: moment().day('Monday').add(7 * howMuch, 'd').format('Y...

阅读全文

LeetCode-判断单调数组

今天看了道算法题, 判断一个数组是否为单调数组,是返回 true,不是返回 false。 Example 1:12Input: [1,2,2,3]Output: true Example 2:12Input: [6,5,4,4]Output: true Example 3:12Input: [1,3,2]Output: false Example 4:12Input: [1,2,4,5]Output: true Example 5:12Input: [1,1,1]Output: true 思考单调即数组后一项都比前一项大,或都比前一项小重点是 每一项 和 比较 要能遍历每一项,需...

阅读全文

© 2019 lvbin's Blog All Rights Reserved.
Theme by hiero