查看详情

What learned from an open github project

Last year, I have tried to finish an interesting react-native project on my GitHub. React-native-percentage-circle is a component which supports you to define your percent data and draw a circle. And also you can use it as a progress bar and show some data in the circle. It does make a difference to my life. Opearation 详情 »

解决 React Native TypeError: babelHelpers.typeof is not a function

React Native有的时候会出现一些比较奇葩的问题,比如今天这次遇见的,运行 react-native start 然后模拟器打开就是这样红色的错误。😂😂😂 宝宝可是什么也没有动过,突然就坏了。 错误内容就是: ``` bash TypeError: babelHelpers.typeof is not a function. (In 'babelHelpers.typeof(target)', 'babelHelpers.typeof' is undefined) ``` 大概解决方法就是: npm cache clean 然后我们需要在我们的项目添加.babelrc 如果没有的话,然后增加一个presets配置: { "presets": ["react-native-stage-0"] } 当然我们也得安装这个依赖。 npm install babel-preset-react-native-stage-0 --save 这个时候我们重新启动: ./node_modules/react-native/packager/packager.sh start --reset-cache 参考: 详情 »

查看详情

【译】带你进入React Native 内部通信

原文地址 : https://tadeuzagallo.com/blog/react-native-bridge/ @ Tadeu Zagallo 这篇文章主要希望大家能够理解 React Native的一些基本原理,我们会聚焦在 React Native内部 native 与 JS之间的通信问题。 主线程 再说其他事情前,我们需要知道在 React Native中有这样三个 主线程: shadow queue: 用于界面 的布局 main thread: UIKit 做自己的事情 JavaScript thread: 运行JS的地方 每个 Native 模块 都有一个 GCD Queue, 除非它特意指定。 实际上 shadow queue 也是一个 GCD Queue 而不是一个线程 Native 模块 如果你不知道如何创建 Native Module,可以移到这里阅读详情。 @interface Person 详情 »

查看详情

聊聊React Native与Weex的Growth Hack

最近开始接触了Weex的一些项目。自己之前写过一段时间React Native,当然这篇文章并不是去探讨两者之间的差异化和使用这些。而是说说技术产品的Growth hack. Growth hacking目前还没有较好的中文对应精准的翻译,来自于Andrew Chen 曾在他那篇有名的《Growth Hacker is the new VP Marketing》 .对于产品用户增长,而且持续曾长,不是一件特别容易的事情,也不要相信一个好的产品,用户就会源源不断的增长。很多知名互联网公司(Facebook Twitter Linkdin)用户增长的背后是来源不断的实践,在其背后有运营在市场的策略也有程序员的开发和数据支持。 React Native 和 Weex 其实背后都天生具有好的基因。那就是其背后是知名的互联网公司。其实在用户成长方面,React Native相比 Weex较为优势的地方,有下面几个方面: React Native基于React,而React很早就开源了,对于JSX的写法,很多React程序员的学习曲线就没有那么陡,而且也奠定了早期的用户。相对VUE的话,相对时间落后些,阿里是今年6月份才开源,而且在写法上与VUE并不能够完全匹配,因此这一点上Weex还需要再进一步。 生态环境,React Native的生态环境远比阿里,当然由于不在同一个时间点,这样不公平, 详情 »

修复 RCTWebSocket - Ignoring return value of function declared with warn_unused_result attribute

最近升级了Mac OS,Xcode打开一个React Native老项目时,build 一直错误; RCTWebSocket - Ignoring return value of function declared with warn_unused_result attribute 心情一下就😂了,这个又要搞事情啊。不过好在这个问题早早有人提交了,修改也比较方便: 具体的issue看这里: https://github.com/facebook/react-native/issues/8584 详情 »

查看详情

使用React Native制作圆形加载条

先放运行截图说明做什么吧, react-native-percentage-circle 项目地址 最近需求需要一个显示百分比的加载条。然而去搜索了很久,没能发现比较满意的组件,只好自己解决了。当然对于大多数前端而言,这个并不是特别难的,可能思路众多,然而面对React Native似乎就有点相形见绌了。解决这样的问题,我们还是得回归前端本身,看看有什么可以嫁接的方案没。 前端常规制作进度条方法 前端实现相对容易点,我们可以用canvas去绘制圆,也可以用SVG去绘制. 使用SVG <svg style="width:2.8rem" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" 详情 »

React Native 升级遇到的问题纪录

最近由React Native 0.21升级到0.30。升级完后,宝宝的心情是: 升级需要谨慎。一打开,全是黄色弹窗。说说遇到的问题吧,当时没有截图,大概凭借记忆说些吧。 react 版本有问题,最好不要用依赖的,会提示关于样式stylesheet的一些报错,安装15.2.0就好。 网络的问题,需要在xcode中的info.plist修改 会提示一些属性的不支持,在下一版本中会放弃掉,建议不再适用。 在module引入的语法发生了变化,建议: import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, Image } from 'react-native'; Component 的写法有了一些变化吧。 第三方的,去Gitub上看有没有新版本吧。老版本的有的不太支持。 详情 »

查看详情

React Native 开发小Tips

相信好多写React Native的都是前端出身,当然遇见问题的,也很多时候会想从前端出发,但由于React Native本身的限制,并不是支持足够多的属性和样式,所以Bo主结合自己的开发实践,并总结了一些将来开发可能会遇见的问题并给出一些小的代码参考;(PS实现不好的希望能大家提出看法,自己也会更新)。 自己将代码放到了example下,并且做成了一个App.这样可以查看具体运行效果: 截图1: 截图2: 项目地址 开始 git clone https://github.com/JackPu/react-native-tips.git 进入example 目录 react-native start 用xcode打开ios目录下的项目,运行就可以看到上面的运行界面了。 1.关于按钮 写习惯了html我们看到按钮,第一时间想到的便是Button,但是目前React Native并没有这个组件,不过没关系,我们可以使用 TouchableHighlight,TouchableOpacity来实现按钮组件,当然常用的样式可以应用在上面,形成格式各样的按钮。 <TouchableHighlight onPress={this._onPressButton}> <Text>This is Button& 详情 »