1.JSON

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/JSON

  • JSON.parse()解析JSON字符串, 可以选择改变前面解析后的值及其属性,然后返回解析的值。

  • JSON.stringify()返回指定值的 JSON 字符串,可以自定义只包含某些特定的属性或替换属性值。

2.转换图片得到图片的uri

import resolveAssetSource from 'resolveAssetSource';
var img = require('./qaq.png');
var source = resolveAssetSource(img);

获取img图片:<Image resizeMode={'contain'} style={{width:140,height:140}} source={{uri:image}}/>

3.布局-输入框与按钮连接

<View
style={{flexDirection: 'row',alignItems: 'center',alignSelf: 'stretch', justifyContent:'center', backgroundColor:'#fff',padding:15}}>
<TextInput
style={{height:40,fontSize:15, borderWidth:1, borderColor:'#eee', width:220, padding:10}}
multiline={false}
autoCapitalize="none"
autoCorrect={false}
value={this.state.text}
onChangeText={(text)=>this.setState({text})}
placeholder="输入文字..."
maxLength={10}
autoFocus={true}
returnKeyType="go"
clearButtonMode="always"/>
<Button
containerStyle={{height:40, alignItems: 'center', backgroundColor: '#00a7ec', paddingTop:7, paddingLeft:15, paddingRight:15}}
style={{ color:'#ffffff'}}
onPress={()=>this._makeTransImage(this.state.text,source.uri)}>
确认
</Button>
</View>

4.如何让我们自己的插件支持npm install和rnpm link?

  1. 首先需要在我们的插件文件夹中添加一个package.json文件(name要修改): { "name": "react-native-nc-gpuimage", "version": "1.0.0", "description": "nc-gpuimage", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "Northcloud", "license": "MIT" }
  2. 接着在我们的插件文件夹中田健一个index.js文件,将我们需要的函数封装进来: import {imageFilterManager} from 'NativeModules'; var imageSvc = { addTextOnTransparentImage: function (text, imagePath) { return new Promise(function (resolve, reject) { imageFilterManager.addTextOnTransparentImage(text, imagePath, resolve, reject); }); }, addImageOnImage: function (aboveImagePath, belowImagePath, fromLeft, fromTop, radius) { return new Promise(function (resolve, reject) { imageFilterManager.addImageOnImage(aboveImagePath, belowImagePath, fromLeft, fromTop, radius, resolve, reject); }); } }; export default imageSvc;
  3. 文件添加完成后,需要我们将项目关闭后,再分别执行npm install和rnpm link命令。
  4. 我们可以检查一下node_modules文件中是否有我们的插件。
  5. 使用方法:在需要用到函数的文件中先引用这个插件:import imageSvc from 'react-native-nc-gpuimage'; 然后再使用插件中的函数。

5.TextInput键盘问题

添加这个属性:keyboardShouldPersistTaps={false}

这样在iOS上,输入框打开后,手点击空白处,键盘就会自动下去了

6.对象循环找到对应值

var self = this;
Object.keys(self.downPayments).map(function(val,i){
if(val==self.state.payment){
}
})
 
 
 

React Native技术知识总结(不定期补充)的更多相关文章

  1. React Native技术做的一个项目“微笑阅读”

    最近用React Native做了一个APP应用,有点心得: React Native确实比Hybrid应用渲染快,响应快,用户体验更好: React Native比原生简单多了,会Js就可以了,开发 ...

  2. 旅行喵 React Native 技术实践

    旅行喵,是一款帮助用户快乐旅行的APP. 第一版的首打功能是行程定制,和景点信息介绍.大家可以在上面做非常简单的偏好选择,通过我们的智能算法生成适合自己的旅行路线. 为什么要用RN呢? 首先,相对于其 ...

  3. React (native) 相关知识

    container component provider组件 react里的redux进阶玩法 react组件的生命周期 conductor / componentWillMount / render ...

  4. React Native开发技术周报1

    (一).资讯 1.React Native 0.21版本发布,最新版本功能特点,修复的Bug可以看一下已翻译 重要:如果升级 Android 项目到这个版本一定要读! 我们简化了 Android 应用 ...

  5. 【React Native开发】React Native配置执行官方样例-刚開始学习的人的福音(8)

    ),React Native技术交流4群(458982758),请不要反复加群! 欢迎各位大牛,React Native技术爱好者加入交流!同一时候博客左側欢迎微信扫描关注订阅号,移动技术干货,精彩文 ...

  6. 为什么学习React Native三点原因

    React Native不到两岁,兼容Android平台刚刚1年.我学习React Native其实也就不到1年,不算长,也不算短. Paul Graham在文章中写过:大多数人真正注意到你的时候,不 ...

  7. [书籍精读]《React Native精解与实战》精读笔记分享

    写在前面 书籍介绍:本书由架构师撰写,包含ReactNative框架底层原理,以及与iOS.Android混合开发案例,精选了大量实例代码,方便读者快速学习.主要内容分为两大部分,第1部分" ...

  8. Shoutem旨在成为React Native移动应用领域的WordPress

    近日,Shoutem推出了新的基于React Native的应用构建器,为开发人员提供了移动应用领域的WordPress. \\ Shoutem让开发人员可以使用一个可视化环境快速创建基于React ...

  9. 📝 没 2 年 React Native 开发经验,你都遇不到这些坑

    如果你喜欢我的文章,希望点赞 收藏 评论 三连支持一下,谢谢你,这对我真的很重要! React Native 开发时,如果只是写些简单的页面,基本上按着官方文档 reactnative.dev就能写出 ...

随机推荐

  1. 结构类模式(四):装饰(Decorator)

    定义 动态地将责任附加到对象上.若要扩展功能,装饰者提供了比继承更有弹性的替代方案. 它是通过创建一个包装对象,也就是装饰来包裹真实的对象. 特点 装饰对象和真实对象有相同的接口.这样客户端对象就能以 ...

  2. css中的img和input标签

    一般情况下,行内元素设置宽高是无效的,常见的有a标签.img和input也属于行内元素,但他们却可以设置宽高!!!! 查阅了一些资料才明白,原来css的元素还有另外一种分类方法,可替换元素,不可替换元 ...

  3. html5 的缓存应用 manifest="filename.appcache"

    启动html5的应用缓存 <!DOCTYPE HTML> <html manifest="filename.appcache"> </html> ...

  4. How to Use a Function or a Procedure as a Parameter in another Function

    http://delphi.about.com/od/adptips2006/qt/functionasparam.htm In Delphi, procedural types (method po ...

  5. Cortex-M3 Context Switching

    http://www.embedded.com/design/embedded/4231326/Taking-advantage-of-the-Cortex-M3-s-pre-emptive-cont ...

  6. 深入理解JavaScript-replace

    replace方法是属于String对象的,可用于替换字符串. 简单介绍: StringObject.replace(searchValue,replaceValue) StringObject:字符 ...

  7. Sublime Text 2 快捷键大全

    Ctrl+L 选择整行(按住-继续选择下行) Ctrl+KK 从光标处删除至行尾 Ctrl+Shift+K 删除整行 Ctrl+Shift+D 复制光标所在整行,插入在该行之前 Ctrl+J 合并行( ...

  8. python学习进阶一

    map()函数 def format_name(s): return s.capitalize() print map(format_name, ['adam', 'LISA', 'barT']) R ...

  9. Codeforce Gym 100015I Identity Checker 暴力

    Identity Checker 题目连接: http://codeforces.com/gym/100015/attachments Description You likely have seen ...

  10. HDU 5590 ZYB's Biology 水题

    ZYB's Biology Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid ...