React Native 之 TextInput(多个语法知识)

RN中TextInput(输入框)使用总结,RN中文网上写的例子涉及到诸多小的知识点,在此做一一解析。

"use strict"

import React, { Component } from ‘react‘;import {  AppRegistry, // 注册组件,是应用的JS运行入口  Text,        // 文本组件(类似于IOS的UILabel)  TextInput,  View         // 视图组件} from ‘react-native‘;

class HelloWorld extends Component {
    constructor(props) {        super(props);        this.state = {‘text‘: ‘‘};    }

    endEditing(param) {        alert(param)    }

    submiteContext(param) {        alert(param)    }

  render() { 

    return (

        <View style={{flex: 1, backgroundColor: ‘gray‘}}>            <TextInput                style={{height: 40, borderStyle: ‘solid‘, marginTop: 100, marginLeft: 30, marginRight: 30}}                placeholder=‘输入内容‘                keyboardType={‘default‘} // 默认键盘类型                autoCapitalize=‘none‘ // 取消首字母大写                keyboardAppearance={‘light‘} // 键盘演示                returnKeyType={‘done‘}  // 代替 returnKeyType                secureTextEntry={false} // 输入内容显示黑色圆点                clearButtonMode={‘while-editing‘} // 输入框右边 x 按钮                clearTextOnFocus={true} // 再次输入清空之前内容                onChangeText={(text) => this.setState({text})} // onChangeText 文本变化是会调用(处于edite状态)                onEndEditing={(event) => this.endEditing( // 退出键盘                    ‘onEndEditing text: ‘ + event.nativeEvent.text                )}                onSubmitEditing={(event) => this.submiteContext( // 数据提交                    ‘onSubmitEditing text: ‘ + event.nativeEvent.text                )}            />            <Text style={{padding:10, fontSize: 30, color: ‘red‘}}>                {this.state.text.split(‘ ‘).map((word) => word && ‘哈哈‘).join(‘插入‘)}

            </Text>            <Text style={{fontSize: 20, color: ‘blue‘, marginLeft: 30, marginRight: 30}}>                {this.state.text.split(‘ ‘)[this.state.text.split(‘ ‘).length - 1]}            </Text>            <Text style={{color: ‘white‘}}>                {this.state.text.split(‘ ‘).map((param) => param && "哈哈")}            </Text>        </View>    );  }}

1.split() 方法用于把一个字符串分割成字符串数组。  str.split(‘ ‘ );是以空格拆分,差分后,行程结果的数组,数组的元素都为字符串。  str.split(‘ ‘,3); 是以空格拆分,拆分后,只取数组length为3的数组。例如: this.state.text.split(‘#‘)[this.state.text.split(‘#‘).length - 1] 用 ‘#’ 字符拆分字符串,并取得数组的最后一个元素

2.map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。map() 方法按照原始数组元素顺序依次处理元素。注意: map() 不会对空数组进行检测。注意: map() 不会改变原始数组。
3.运算符 &&   || 在运算过程中,首先js 会将 && 和|| 两边的值转成Boolean 类型,然后再算值 ,&&运算如果返回true,则取后面的值,如果|| 返回true,则取前面的值 ,而其中数值转换成boolean 的规则 是:  对象、非零整数、非空字符串返回true,其它为false ;例如:该逻辑运算符支持短路原则 参考:http://blog.csdn.net/xiaoshuode/article/details/51612423 var a = “” || null || 3 || 4 —-> var a = false || false || true || true 结果为true 则返回第一个true,即是3分析: ||  这个运算符 “一真为真”,结果返回true,取前面的true(第一个true),即是 3
var b = 4 && 5 && null && 0 ——> var b = true && true && false && false 结果是false 则返回第一个false 即是null .分析: && 这个运算符  “一假为假”,结果返回false,取前面的false(第一个false),即是 null
var c = 5 && 6 ----->var c =  true && true 结果为ture,则返回后面的ture,即是 6

4.箭头函数(param) => param && "哈哈"箭头函数实际上是在这里定义了一个临时的函数,箭头函数的箭头=>之前是一个空括号、单个的参数名、或用括号括起的多个参数名,而箭头之后可以是一个表达式(作为函数的返回值),或者是用花括号括起的函数体(需要自行通过return来返回值,否则返回的是undefined)。
()=>1
v=>v+1
(a,b)=>a+b
()=>{
    alert("foo");
}
e=>{
    if (e == 0){
        return 0;
    }
    return 1000/e;
}

5.join() 方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。 语法 arrayObject搜索.join(separator)
 参数、描述 separator    可选。指定要使用的分隔符。如果省略该参数,则默认使用逗号作为分隔符。 返回值 返回一个字符串。该字符串是通过把 arrayObject 的每个元素转换为字符串,然后把这些字符串连接起来,在两个元素之间插入separator 字符串而生成的。
6.创建函数及调用:参考以上用法

				
时间: 2024-08-03 04:26:01

React Native 之 TextInput(多个语法知识)的相关文章

React Native 之 TextInput使用

前言 学习本系列内容需要具备一定 HTML 开发基础,没有基础的朋友可以先转至 HTML快速入门(一) 学习 本人接触 React Native 时间并不是特别长,所以对其中的内容和性质了解可能会有所偏差,在学习中如果有错会及时修改内容,也欢迎万能的朋友们批评指出,谢谢 文章第一版出自简书,如果出现图片或页面显示问题,烦请转至 简书 查看 也希望喜欢的朋友可以点赞,谢谢 TextInput 文本输入框 React Native中的文本输入框使用和iOS比较相近,可能是因为 RN 首先封装iOS端

react native 中textInput的value属性详解

TextInput用法就不多讲了,主要记录下遇到的一个怪问题. 背景:项目需要开发一个充值页面,需要一个输入框,然后几个按钮,输入框是允许用户自己输入任意金额,按钮是可以让用户快捷选择金额. 那么问题来了,一般来说是改变文本框的值就可以了. 比如这样 <TextInput placeholderTextColor='#cccccc' underlineColorAndroid='transparent' keyboardType={'numeric'} style={styles.inputSt

react native 布局注意点

一.react native中很多是ES6语法. 1行.表示是js的严格模式. 'use strict';严格模式中变量必须先声明,然后赋值.定义等:还有就是this的绑定. 2行到8行.导入依赖,可以理解为java中import XX.react-native.React;和import XX.react-native.React.AppRegistry;这种. 9行.自定义组件,组件是React Native的基本元素,可以类比Activity. 10行到24行.render()方法,我的理

React Native之微信分享(iOS Android)

React Native之微信分享(iOS Android) 在使用React Native开发项目的时候,基本都会使用到微信好友或者微信朋友圈分享功能吧,那么今天我就带大家实现以下RN微信好友以及朋友圈的分享功能. 一,应用申请审核 大家需要去微信开发平台去注册账号并且创建一个移动应用.(地址:https://open.weixin.qq.com),然后根据流程申请即可.但是需要注意的是Android需要获取签名信息: 下载安装上面的签名信息包apk,然后在上面输入android项目的包名,点

为React Native开发写的JS和React入门知识

来自Leo的原创博客,转载请著名出处 我的stackoverflow 前言 想来想去,还是需要写一篇文章来介绍下JavaScript和React的基本知识.最初开发ReactNative的时候,完全没接触过React,大学那会简单学了点JS.毕业后一直在某五百强外企上班.做的东西也乱七八糟的,搞过大数据,搞过物联网,不过看我博客的同学应该知道,我对iOS和Android还是比较喜欢的.所以,博客都是写的都是移动端的东西.好像扯的有点多了,本文的目的就是为了那些JS和React小白提供一个快速入门

React Native 入门基础知识总结

中秋在家闲得无事,想着做点啥,后来想想,为啥不学学 react native.在学习 React Native 时, 需要对前端(HTML,CSS,JavaScript)知识有所了解.对于JS,可以看看阮一峰老师的<ECMAScript 6 入门>这篇文章.里面涉及很多 ES6 的新特性.我之前也是看了阮老师的文章做了一些学习笔记 ES6 学习笔记. 1.环境搭建 环境搭建中文教程,点击跳转RN中文社区 :http://reactnative.cn/docs/0.40/getting-star

【REACT NATIVE 系列教程之十三】利用LISTVIEW与TEXTINPUT制作聊天/对话框&&获取组件实例常用的两种方式

本站文章均为 李华明Himi 原创,转载务必在明显处注明: 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/react-native/2346.html 本篇Himi来利用ListView和TextInput这两种组件实现对话.聊天框. 首先需要准备的有几点:(组件的学习就不赘述了,简单且官方有文档) 1. 学习下 ListView: 官方示例:http://reactnative.cn/docs/0.27/tutorial.html#content

React Native知识

http://www.cnblogs.com/wujy/tag/React%20Native/ React Native知识12-与原生交互 React Native知识11-Props(属性)与State(状态) React Native学习笔记之2 React Native知识10-ListView组件 React Native知识9-ScrollView组件 React Native知识8-WebView组件 React Native知识7-TabBarIOS组件 React Native

React Native 组件之TextInput

React Native 组件之TextInput类似于iOS中的UITextView或者UITextField,是作为一个文字输入的组件,下面的TextInput的用法和相关属性. /** * Sample React Native App * https://github.com/facebook/react-native * 周少停 2016-09-16 * TextInput 常用属性 */ import React, { Component } from 'react'; import