前言
刚为祖国母亲庆完生,眼看假余额就要不足了,小伙伴们玩的是否开心呢,反正我是死宅在家,没出去玩,在家也没好好学习,实属惭愧。这不,今天和大家分享下关于 react 驱动 ui 更新的几种方式,都说 react 是单向数据流,数据驱动 ui,那么你知道在 react 中有几种驱动视图更新的方式呢。
刚为祖国母亲庆完生,眼看假余额就要不足了,小伙伴们玩的是否开心呢,反正我是死宅在家,没出去玩,在家也没好好学习,实属惭愧。这不,今天和大家分享下关于 react 驱动 ui 更新的几种方式,都说 react 是单向数据流,数据驱动 ui,那么你知道在 react 中有几种驱动视图更新的方式呢。
面试官:“react中
setState
是同步的还是异步?”
我:“异步的,setState
不能立马拿到结果。”面试官:“那什么场景下是异步的,可不可能是同步,什么场景下又是同步的?”
我:“……”
setState
真的是异步的吗?这两天自己简单的看了下 setState
的部分实现代码,在这边给到大家一个自己个人的见解,可能文字或图片较多,没耐心的同学可以直接跳过看总结(源码版本是16.4.1)。
刚入职新公司,算是暂时从React转到Vue,所以对Vue的理解和使用也算是新手,每次碰到各种问题,就只能带着问题去解决。 问题的由来是因为看到项目中创建组件的方式是直接export default
直接导出一个对象,而之前自己写demo的时候都是Vue.extend
或者是new Vue
, 也不知道为什么这么用,查了下还有Vue.component
加上上述的三个,总共四种方式创建组件, 索性就去看下四种有什么区别。
多语言支持对于一些国际化的大公司,或者是一些开源社区的文档(比如vue),是一个挺普遍的需求,总感觉自己什么时候也会做到这种需求,最近公司的项目就需要做中英文双语言。
一般做法有两种,要么做多套,要么就一套里面切换,我司是后者。由于公司项目是基于react技术栈,所以实现方面就借助react-intl这个库,是雅虎的一个开源项目,本文就说下如何在react项目中使用react-intl
实现多语言支持。
人生第一次BAT级别面试经验,还是笔试,总共三道题目,特此记录!
Q:在一个数组中,元素可能有正整数,0,负整数,求其一个连续的子序列,使得该子序列的元素相加之和是所有连续子序列和最大的。
例如:数组[1,2,-5,3,0,-1,2,-4,3],其最大和的子序列为[3,0,-1,2],其最大和为4,实现其代码。
首先思考一个问题,如何生成一个[0,1,2…97,98,99]的数组?
一般第一时间想到的肯定是for循环跑一下,完事了。但是有没有什么奇淫技巧实现呢,答案是有的。Array.from({ length: 100 }, (v, i) => i)
,那么一起看下这个Array.from是什么。
在Node
中,采用CommonJS
模块规范。 什么是CommonJS规范
?
CommonJS
规范是为了解决JavaScript
的作用域问题而定义的模块形式,可以使每个模块它自身的命名空间中执行。该规范的主要内容是,模块必须通过module.exports
导出对外的变量或接口,通过require()
来导入其他模块的输出到当前模块作用域中。
不得不佩服redux
的作者Dan Abramov
,看完applyMiddleware
的源码,我的感受就是:还有这种操作?
与其说是理解applyMiddleware
,不如说是理清createStore
,applyMiddleware
和一些中间件的关系,和为什么中间件都是export const createThunkMiddleware = ({ dispatch, getState }) => next => action => {...}
三层嵌套关系。