React Native
iOS打包报错:symbol(s) not found for architecture armv7
解决办法:在React Native版本小于0.45的情况下,pods导入BatchedBridge
如:
pod 'React', path: '../node_modules/react-native', subspecs: [
'BatchedBridge',
]
Text组件,在Android平台上,Text组件里使用paddingLeft 属性,不好使,直接顶着View了。
解决方式:1)将paddingLeft放在View属性上
2)将paddingLeft修改为marginLeft
建议使用第一种方案修改,把对齐方式交给view去处理,Text只负责文本属性的显示
TextInput组件
1、在使用TextInput的过程中,在Android平台下,输入框下有个横线,此时需要将属性underlineColorAndroid 设置为transparent来解决。
2、常用的TextInput是作为文本域,譬如最多输入50个字符。
此时需要设置 multiline ={true}
maxLength ={50
[npm 安装包报错 rollbackFailedOptional]
原因事设置的代理错误,删除即可
npm config rm proxy
npm config rm https-proxy
然后使用npm install -g cnpm --registry=https://registry.npm.taobao.org安装淘宝的cnpm
然后就可以使用cnpm命令了
通过onLayout来获取控件的size
{nativeEvent:{x, y, width, height}}
React Native在频繁的更新操作时,使用的更新属性方法是setNativeProps
例:
this.refs.tabView.setNativeProps({
style : {
height : 0,
opacity : 0
}
});
ListView/ScrollView偏移问题
在使用了下拉刷新,上提加载功能后出现了偏移问题:
要把他们的自动布局功能关闭就可以了:
automaticallyAdjustContentInsets={false}
例如:
<ListView
automaticallyAdjustContentInsets={false}
style={{backgroundColor: 'white'}}
renderRow={this._renderRow}
renderSectionHeader={this._renderSectionHeader}
dataSource={ds.cloneWithRowsAndSections(dataBlob, sectionIDs, rowIDs)}
/>
Unable to resolve module:react-module
解决: 用 npm install react -module –save
例如: 报could resolve:react-time-mixin
运行:npm install react-time-mixin –save
Uncaught Error: Invariant Violation: Element type is invalid: expected a string (for built-in components) or a class/function but got: object
例如:有一个 var Home=require(‘./Home’)
改为 var Home=require(‘./Home’).default
或者 import Home from ‘./Home’
参考:
http://stackoverflow.com/questions/34130539/uncaught-error-invariant-violation-element-type-is-invalid-expected-a-string
在android上直接报element-type-is-invalid
http://bbs.reactnative.cn/topic/53/solved-componenet-hello-
安装安卓模拟器,报错unable to load script form assets解决
在报错页面终端运行adb shell input keyevent 82
在出现的菜单中,选择dev-setting,选择Debug server host & port for device,输入本机ip地址加端口号,再次打开rn服务,重新打开rn页面
RN安装过程中遇到的问题
react-native初始化项目时候报错?react-native init
Error: Command failed: yarn add react-native --exact
npm config set registry https://registry.npm.taobao.org
npm config set disturl https://npm.taobao.org/dist
或者
Yarn version:
0.27.5
Node version:
8.1.3
遇到同样的问题,最终解决办法:cd 到/usr/local/bin 然后rm yarn,干掉yarn之后就可以了