项目地址: https://github.com/skyline75489/Deck
目前还在开发中,就实现了截屏展示的几个功能。
顺便吐槽一下 React Native,现阶段 React Native 还是太不成熟了,有很多坑真的是只有自己踩过才知道。。。
目前还在开发中,就实现了截屏展示的几个功能。
顺便吐槽一下 React Native,现阶段 React Native 还是太不成熟了,有很多坑真的是只有自己踩过才知道。。。
|
66450146Jun 6, 2015
1
听楼主这么说我就放心了,还好新的项目没直接上……
|
|
crazyxin1988Jun 6, 2015
2
不知道 android版本的react native会是啥样子。
满满都是坑 哈哈 |
|
dementrockJun 6, 2015 via Android
3
lz可以介绍下具体遇到过哪些坑吗?主要集中在什么方面呢?
|
|
lht91225Jun 6, 2015
4
同问,有那些坑呢?
|
|
5
@dementrock 简单说一个吧,我两次试着升级 React Native ,升完都崩了。。。
|
|
dementrockJun 6, 2015
6
@skyline75489 具体是升级前后版本不兼容吗?还是新版本引入了更多bug?
我们团队自己也在做类似RN的框架,希望能尽可能地了解潜在的坑会是在什么方面。 |
|
dementrockJun 6, 2015
7
@skyline75489 哈 刚看到附言 研究一下
|
|
openrocJun 6, 2015
8
直接进坑观摩~
|
|
tamamaxoxJun 7, 2015
9
看了文章,有些地方明明就是lz没有理解透reactjs的原理,例如第二个<TouchableOpacity onPress={this.handlePress()}>
就应该写成<TouchableOpacity onPress={this.handlePress}> |
|
10
@tamamaxox 我确实是初学 React,有些地方理解还不够深刻。这个地方只是举个例子,因为后面是需要传参的,这里就写了一个传空参数的。我也求教一下,如果需要传参的话,应该怎么写比较好?
|
|
11
@tamamaxox 我试了一下,换成 this.handlePress 也是会报错的,不过之前是在加载的时候就报,现在改成了在点击之后报。
|
|
xylitolLinJun 7, 2015
12
|
|
tamamaxoxJun 7, 2015
13
|
|
tamamaxoxJun 7, 2015
14
|
|
angkecJun 7, 2015 via Android
15
写成 onPress={function(){this.handlePress()}}?
|
|
16
@tamamaxox 一般的 ListView 每个 Row 点进去是另一个 View, 这个 View 知道自己要往哪里去,写自己的 handlePress 就可以了,不需要传参。
传参这个主要是在时间线上要用到,一个时间线上可能提到用户,也可能提到仓库,比方说 xxx star 了 xxx 仓库,这种就坑爹了,一个 Row 里有两个 Touchable 需要处理,只能通过传参解决。 |
|
17
@angkec 现在看来写成匿名函数的写法是可行的,看起来也比较简洁。我已经改成匿名函数的写法了 https://github.com/skyline75489/Deck/blob/master/App%2FComponents%2FEventRow.js#L54
|
|
hpze2000Jun 8, 2015
18
楼主 这个坑帮我看看啥问题。
$ react-native init AwesomeProject This will walk you through creating a new React Native project in /Users/johnson/AwesomeProject npm WARN engine [email protected]: wanted: {"node":"~0.10"} (current: {"node":"0.12.4","npm":"2.10.1"}) [email protected] install /Users/johnson/AwesomeProject/node_modules/react-native/node_modules/ws (node-gyp rebuild 2> builderror.log) || (exit 0) 初始化项目的时候, 一直卡在那, 是需要翻墙么?? |
|
19
@hpze2000 这就是在 Build 啊,确实挺慢的,就等会儿呗
|