項(xiàng)目環(huán)境:
"react":"16.0.0-alpha.6",
"react-native":"0.44.0",
"react-native-animatable":"^1.2.4",
"react-native-baidu-map":"^0.6.0",
"react-native-easy-toast":"^1.0.8",
"react-native-gallery":"0.0.17",
"react-native-image-crop-picker":"^0.17.3",
"react-native-image-progress":"^1.0.1",
"react-native-image-zoom-viewer":"^2.0.10",
"react-native-progress":"^3.4.0",
"react-native-pull":"^2.0.2",
"react-native-scrollable-tab-view":"^0.8.0",
"react-native-swiper":"^1.5.13",
"react-native-vector-icons":"^4.4.2",
"react-navigation":"^1.0.0-beta.11"锣夹。
1、這個(gè)項(xiàng)目是一開始用的navigation,和其他的一些第三方庫(kù)浅役,做到一半的時(shí)候發(fā)現(xiàn)有個(gè)圖片選擇的功能,于是各種找伶唯,決定用react-native-image-crop-picker觉既;當(dāng)我安裝庫(kù)后,把xcode項(xiàng)目按照croppicker的官方教程走下來(lái)乳幸,發(fā)現(xiàn)xcode項(xiàng)目都打不開了瞪讼,主要是這一步影響的(react-native link react-native-image-crop-picker)。
接著就是各種重來(lái)粹断,各種配置符欠,好幾遍,都不能成功瓶埋,最后用重建一個(gè)項(xiàng)目希柿,然后只用crop-picker,發(fā)現(xiàn)可以使用养筒。然后就在這個(gè)簡(jiǎn)單的項(xiàng)目的基礎(chǔ)上繼續(xù)往下搭環(huán)境把原來(lái)的項(xiàng)目整合進(jìn)去曾撤,最后可以使用了。希望對(duì)用到的人有所幫助吧晕粪。
2挤悉、
關(guān)于項(xiàng)目中的輸入響應(yīng)子組件的componentWillReceiveProps,這里獲得的輸入的值永遠(yuǎn)是輸入框改變之前的值巫湘。
處理:通過本地存儲(chǔ)把輸入框的值改變装悲,然后在子組件中獲得本地存儲(chǔ)的值,再做相應(yīng)的操作尚氛。如:
在主組件的輸入框中:
onChangeText={(name) => {
Tool.setOne('searchText',{name:name})
this.setState({
searchText:name,
});}}
然后在子組件中:
componentWillReceiveProps() {
// console.warn(this.props.name)//這里的值永遠(yuǎn)是父組件的輸入框的改變之前的值衅斩。
Tool.getOne('searchText').then(val=>{//自己封裝的本地存儲(chǔ)
// console.warn(val.name);//這里的值為實(shí)時(shí)響應(yīng)的值。
this.state.reqData.name=val.name;
this.state.nomore=false;
this.state.reqData.page=0;
this.state.listData= [];
this.setState({
dataSource:this.state.dataSource.cloneWithRows([])
});
this.loadMore();
})}
3怠褐、關(guān)于百度地圖集成后archive發(fā)布的問題畏梆。詳細(xì)說明。
4、 Xcode編譯常見錯(cuò)誤解決:linker command failed with exit code 1 (use -v to see invocation)? ,
5奠涌、關(guān)于解決Modal框的問題宪巨。npm install react-native-root-modal,替換RN的modal溜畅。詳細(xì)說明捏卓。
6、Attempted to transition from state `RESPONDER_INACTIVE_PRESS_IN` to `RESPONDER_ACTIVE_LONG_PRESS_IN`, which is not supported.
這個(gè)是因?yàn)殚_啟了debug模式慈格,關(guān)閉即可怠晴。
7、關(guān)于微信插件react-native-wechat浴捆,如果RN版本小于0.46(好像是)蒜田,就只能用1.9.2的版本,最新1.9.9的版本有一個(gè)第三方包只有0.46以上才有选泻。
8冲粤、關(guān)于,Android中百度地圖顯示網(wǎng)格的問題页眯。當(dāng)環(huán)境配置好后(配置環(huán)境的時(shí)候跟著文檔走就可以了梯捕,只是在mainApplication中的new BaiduMapPackage(getApplicationContext()),中的getApplicationContext(),需要自己加),出現(xiàn)網(wǎng)格窝撵,
如果空白可能的問題是ak填錯(cuò)傀顾,或者meta-data放錯(cuò)地方。
可以嘗試一下這個(gè):
android:name="com.baidu.lbsapi.API_KEY"
android:value="?xxxxxxxxxxxxxxxxxxx"/>
meta-data 放到application里面
9碌奉、用ListView的時(shí)候锣笨,會(huì)出現(xiàn)一個(gè)非常傻bi的情況,就是render的時(shí)候道批,listView不顯示错英,需要碰/滑一下才會(huì)顯示。
一開始我在懷疑自己是不是布局哪里有沖突隆豹,改到哭都沒發(fā)現(xiàn)布局有什么問題椭岩,直到我谷歌了一下 “react native listView not show touch”...
最后,我按react native里的issue:
在初始化listView時(shí)設(shè)置屬性
removeClippedSubviews={false}
10璃赡、項(xiàng)目最近更新到
"react":"16.0.0",
"react-native":"0.50.4",
不過這就出了些問題判哥,
???? 1、import React ,{PropTypes}from'react';這句話不能用了碉考,react直接把Proptypes放到單獨(dú)的庫(kù)里面了塌计。改為
const PropTypes = require('prop-types');這樣的話很多第三方庫(kù)都要改,最好的方式是直接將react的index改為:
'use strict';
import PropTypes from'prop-types';
letReact;
if(process.env.NODE_ENV ==='production') {
React = require('./cjs/react.production.min.js');
}else{
React = require('./cjs/react.development.js');
}
React.PropTypes = PropTypes;
module.exports = React;
侯谁、锌仅、章钾、、热芹、贱傀、、伊脓、府寒、、报腔、株搔、、纯蛾、纤房、、茅撞、、巨朦、米丘、、