React Native实现简单的登录功能(推荐)


Posted in Javascript onSeptember 19, 2016

React Native 简介:

React Native 结合了 Web 应用和 Native 应用的优势,可以使用 JavaScript 来开发 iOS 和 Android 原生应用。在 JavaScript 中用 React 抽象操作系统原生的 UI 组件,代替 DOM 元素来渲染等。

React Native 使你能够使用基于 JavaScript 和 React 一致的开发体验在本地平台上构建世界一流的应用程序体验。React Native 把重点放在所有开发人员关心的平台的开发效率上——开发者只需学习一种语言就能轻易为任何平台高效地编写代码。Facebook 在多个应用程序产品中使用了 React Native,并将继续为 React Native 投资。

学习React Native也有2个月了,从最开始的页面到点点击事件,到调用接口大体都会了,今天实现一个简单的登录功能。

React Native实现简单的登录功能(推荐)

这里需要说明几点:

1、<TextInput>组件在React Native中,默认是带一条横线的,如果想去掉输入框下面的横线,需要给<TextInput>指定一个underlineColorAndroid='transparent',这样就可以去掉输入框下面的横线了;

2、密码输入框需要指定属性:secureTextEntry={true}

3、要显示图片,必须为<Image>标签指定宽度和高度,和Android中不同的是,<Image>没法自动调整图片的大小,没有类似Android中的wrap_content。

代码如下:

/** 
* Sample React Native App 
* https://github.com/facebook/react-native 
* @flow 
*/ 
import React, {Component} from 'react'; 
import { 
AppRegistry, 
StyleSheet, 
Text, 
Image, 
View, 
TextInput 
} from 'react-native'; 
class ReactDemo extends Component { 
render() { 
return ( 
<View style={styles.container}> 
<View style={styles.header}> 
<Text style={styles.headtitle}>添加账号</Text> 
</View> 
<View style={styles.marginTopview}/> 
<View style={styles.inputview}> 
<TextInput underlineColorAndroid='transparent' style={styles.textinput} placeholder='QQ号/手机号/邮箱'/> 
<View style={styles.dividerview}> 
<Text style={styles.divider}></Text> 
</View> 
<TextInput underlineColorAndroid='transparent' style={styles.textinput} placeholder='密码' 
secureTextEntry={true}/> 
</View> 
<View style={styles.bottomview}> 
<View style={styles.buttonview}> 
<Text style={styles.logintext}>登 录</Text> 
</View> 
<View style={styles.bottombtnsview}> 
<View style={styles.bottomleftbtnview}> 
<Text style={styles.bottombtn}>无法登录?</Text> 
</View> 
<View style={styles.bottomrightbtnview}> 
<Text style={styles.bottombtn}>新用户</Text> 
</View> 
</View> 
</View> 
</View> 
); 
} 
} 
const styles = StyleSheet.create({ 
container: { 
flex: 1, 
backgroundColor: '#FFFFFF' 
}, 
header: { 
height: 50, 
backgroundColor: '#12B7F5', 
justifyContent: 'center', 
}, 
headtitle: { 
alignSelf: 'center', 
fontSize: 20, 
color: '#ffffff', 
}, 
avatarview: { 
height: 150, 
backgroundColor: '#ECEDF1', 
justifyContent: 'center', 
}, 
avatarimage: { 
width: 100, 
height: 100, 
alignSelf: 'center' 
}, 
marginTopview: { 
height: 15, 
backgroundColor: '#F7F7F9' 
}, 
inputview: { 
height: 100, 
}, 
textinput: { 
flex: 1, 
fontSize: 16, 
}, 
dividerview: { 
flexDirection: 'row', 
}, 
divider: { 
flex: 1, 
height: 1, 
backgroundColor: '#ECEDF1' 
}, 
bottomview: { 
backgroundColor: '#ECEDF1', 
flex: 1, 
}, 
buttonview: { 
backgroundColor: '#1DBAF1', 
margin: 10, 
borderRadius: 6, 
justifyContent: 'center', 
alignItems: 'center', 
}, 
logintext: { 
fontSize: 17, 
color: '#FFFFFF', 
marginTop: 10, 
marginBottom: 10, 
}, 
emptyview: { 
flex: 1, 
}, 
bottombtnsview: { 
flexDirection: 'row', 
}, 
bottomleftbtnview: { 
flex: 1, 
height: 50, 
paddingLeft: 10, 
alignItems: 'flex-start', 
justifyContent: 'center', 
}, 
bottomrightbtnview: { 
flex: 1, 
height: 50, 
paddingRight: 10, 
alignItems: 'flex-end', 
justifyContent: 'center', 
}, 
bottombtn: { 
fontSize: 15, 
color: '#1DBAF1', 
} 
}); 
AppRegistry.registerComponent('ReactDemo', () => ReactDemo);

以上所述是小编给大家介绍的React Native实现登录功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
一个符号插入器 中用到的js代码
Sep 04 Javascript
js获取光标位置和设置文本框光标位置示例代码
Jan 09 Javascript
javascript怎么禁用浏览器后退按钮
Mar 27 Javascript
Javascript基础教程之数据类型 (数值 Number)
Jan 18 Javascript
BootStrap Validator使用注意事项(必看篇)
Sep 28 Javascript
angularJS深拷贝详解
Mar 23 Javascript
vue移动端项目缓存问题实践记录
Oct 29 Javascript
利用jqgrid实现上移下移单元格功能
Nov 07 Javascript
vue中的双向数据绑定原理与常见操作技巧详解
Mar 16 Javascript
解决VUE mounted 钩子函数执行时 img 未加载导致页面布局的问题
Jul 27 Javascript
如何编写一个 Webpack Loader的实现
Oct 18 Javascript
动态实现element ui的el-table某列数据不同样式的示例
Jan 22 Javascript
在Web项目中引入Jquery插件报错的完美解决方案(图解)
Sep 19 #Javascript
BootStrap入门教程(二)之固定的内置样式
Sep 19 #Javascript
BootStrap入门教程(一)之可视化布局
Sep 19 #Javascript
Node.js的基本知识简单汇总
Sep 19 #Javascript
React实现双向绑定示例代码
Sep 19 #Javascript
vue从使用到源码实现教程详解
Sep 19 #Javascript
浅谈js内置对象Math的属性和方法(推荐)
Sep 19 #Javascript
You might like
ThinkPHP之M方法实例详解
2014/06/20 PHP
PHP+Ajax检测用户名或邮件注册时是否已经存在实例教程
2014/08/23 PHP
PHP callback函数使用方法和注意事项
2015/01/23 PHP
php实现在服务器端调整图片大小的方法
2015/06/16 PHP
PHP操作Redis常用技巧总结
2018/04/24 PHP
PHP中将一个字符串部分字符用星号*替代隐藏的实现代码
2019/09/08 PHP
laravel实现于语言包的完美切换方法
2019/09/29 PHP
jquery自动将form表单封装成json的具体实现
2014/03/17 Javascript
js的Prototype属性解释及常用方法
2014/05/08 Javascript
jquery中each遍历对象和数组示例
2014/08/05 Javascript
基于jQuery实现仿微博发布框字数提示
2016/07/27 Javascript
JS实现的表格行上下移动操作示例
2016/08/03 Javascript
vue 2.0路由之路由嵌套示例详解
2017/05/08 Javascript
详解nodejs实现本地上传图片并预览功能(express4.0+)
2017/06/28 NodeJs
深入理解vuex2.0 之 modules
2017/11/20 Javascript
微信小程序身份证验证方法实现详解
2019/06/28 Javascript
[01:23:59]2018DOTA2亚洲邀请赛 4.1 小组赛 B组 VP vs Secret
2018/04/03 DOTA
python网络编程学习笔记(七):HTML和XHTML解析(HTMLParser、BeautifulSoup)
2014/06/09 Python
仅用50行Python代码实现一个简单的代理服务器
2015/04/08 Python
Python内置的HTTP协议服务器SimpleHTTPServer使用指南
2016/03/30 Python
使用TensorFlow实现SVM
2018/09/06 Python
为什么Python中没有&quot;a++&quot;这种写法
2018/11/27 Python
pyqt实现.ui文件批量转换为对应.py文件脚本
2019/06/19 Python
Python实现Selenium自动化Page模式
2019/07/14 Python
Python os模块常用方法和属性总结
2020/02/20 Python
python tkinter 设置窗口大小不可缩放实例
2020/03/04 Python
Python小白垃圾回收机制入门
2020/06/09 Python
TUMI香港官网:国际领先的行李箱、背囊品牌
2021/03/01 全球购物
2014学校庆三八妇女节活动总结
2014/03/01 职场文书
教师中国梦演讲稿
2014/04/23 职场文书
宣传标语大全
2014/07/01 职场文书
员工安全责任书范本
2014/07/24 职场文书
十岁生日答谢词
2015/01/05 职场文书
幼儿园教学工作总结2015
2015/05/12 职场文书
如何解决goland,idea全局搜索快捷键失效问题
2022/04/03 Golang
Windows Server 2012 R2服务器安装与配置的完整步骤
2022/07/15 Servers