您的浏览器不支持JavaScript或者JavaScript的运行被您禁止了。
redux中出现同类名action导致的bug
最近同事发现了一个历史遗留bug,bug的原因是redux store派发了同名action导致的。因为现在习惯了模块化开发,通常下意思会认为只要是不同模块里导出来的变量被用到不同的页面里,那彼此就没啥关系了。所以刚看到这个bug还是愣了一下的,虽然是个简单的bug。应了那句话(我说的),难的东西只有两种,一种是真的难,一种是实在简单到过于出乎意料(以至于往往你会想不到)。 ...
暂无评论
React Native系列之BackAndroid
检测硬件设备上的返回按钮被“按”的事件,如果未绑定监听器或者没有返回true的监听器,那么按返回键默认会关闭app。订阅该事件的监听器会以与订阅顺序相反的顺序被执行(最后订阅该事件的监听器最先被执行),并且如果有一个监听器返回了true,那么在此之前订阅该事件的监听器将不再被执行。
暂无评论
React Native项目:Xcode提示the application does not have a valid signature
背景: 使用的Xcode版本号为:Version 8.3.3 (8E3004b); 连真机运行React Native项目; Build success,但是在install application on iPhone时提示“the application does not have a valid signature”。 解决方法: 打开Xcode顶部菜单Product,选择Clean; 点击三角箭头重新build项目。
暂无评论
Monkey patch
最难看公司代码和redux官方文时了解到monkey patch这个名词的。monkey是猴子的意思,patch是补丁的意思,monkey patch的意思就是你先去抓一只猴子,然后给他们线和针,教他们打补丁,等他们学会了之后就可以自己给自己打补丁了——开个玩笑。Wikipedia上对monkey patch的定义是: A monkey patch is a way for a program to extend or modify supporting system software locally (affecting only the running instance of the program). redux的middleware中间件的实现原理也是monkey patch,具体就不在赘述了,官网上已经写得很明白了(每应用一个中间件,就相当于重写了一次store.dispatch方法):http://redux.js.org/docs/advanced/Middleware.html
暂无评论
新的征程——React Native
面试的时候,有问到一个问题,switch组件(滑动开关组件)应该用props还是states,领导说是要用states,不过个人觉得应该是用props,因为如果这个组件要是作为第三方组件供他人使用的话,肯定不会取改组件内部的代码的,感觉还是通过props传两个值(一个是表示开关状态的flag,一个是用于修改开关flag的值的函数)比较适合,我vue项目里是这么去弄的,不知道是不是我想错了-_-。
暂无评论
React Native中的InteractionManager
触控系统会将单点或多点触控视为一个“交互”(interaction),然后在等到所有触控都结束会被取消后再执行runAfterInteractions()回调函数。 InteractionManager也允许app在动画开始时通过创建交互“句柄”(interaction "handle")来注册动画,然后在动画结束后清除该句柄。
暂无评论
React Native中的针对特定平台的代码
如果你针对特定平台的代码比较复杂的话,你应该考虑将它们拆分到独立的文件中。当一个组件要加载的另外一个组件对应的文件名有.ios.和/或.android.扩展名时,React Native会根据当前所处平台来加载对应的文件。
暂无评论
StatusBar(状态条) in React Native
StatusBar组件是允许同时出现多个的(当然,状态条是只有一个的),多个StatusBar组件的属性会被合并到一起(越后装载的StatusBar组件的属性会越迟被合并)。比如,可以通过Navigator实现根据路由来调整状态条的样式。
暂无评论
1