美文网首页
RN--TextInput组件

RN--TextInput组件

作者: 能吃饭也能吃苦1236 | 来源:发表于2018-09-04 00:34 被阅读0次

    输入框组件的主要属性如下:

    • autoCapitalize : 枚举类型,可选值有none,sentences,words,characters.当用户输入时,用于提示。
    • placeholder:占位符,在输入前显示的文本内容。
    • value : 文本输入框的默认值。
    • placeholderTextColor: 占位符文本颜色。
    • password : 如果为ture , 则是密码输入框,文本显示为***。
    • multiline : 如果为true , 则是多行输入。
    • editable : 如果为false , 文本框不可输入。其默认值事true。
    • autoFocus : 如果为true, 将自动聚焦。
    • clearButtonMode : 枚举类型,可选值有never,while-enditing , unless-editing,always.用于显示清除按钮。
    • maxLength : 能够输入的最长字符数。
    • enablesReturnKeyAutomatically : 如果值为true,表示没有文本时键盘是不能有返回键的。其默认值为false。
    • returnKeyType : 枚举类型,可选值有-default,go,google,join,next,route,search,send,yahoo,done,emergency-call。表示软键盘返回键显示的字符串。
    • onChangeText : 当文本输入框的内容发生变化时,调用该函数。onChangeText接收一个文本的参数对象。
    • onChange : 当文本变化时,调用该函数。
    • onEndEditing : 当结束编辑时,调用该函数。
    • onBlur : 失去焦点出发事件。
    • onFocus : 获得焦点出发事件。
    • onSubmitEditing : 当结束编辑后,点击键盘的提交按钮出发该事件。

    JS字符串也有methods(方法)

    "hello".length; // 5
    "hello".charAt(0); // "h"
    "hello, world".replace("hello", "goodbye"); // "goodbye, world"
    "hello".toUpperCase(); // "HELLO"
    

    JS变量:在 JavaScript 中声明一个新变量的方法是使用关键字let、const和var

    • let
      let 语句声明一个块级作用域的本地变量,并且可选的将其初始化为一个值;
      let可能意味着一个值,或者一个变量可以赋值,但不能被更改;
      在javascript 中 let只创建块范围局部变量;
      与var关键字不同的是,它声明的变量只能是全局或者整个函数块的。
    function varTest() {
      var x = 1;
      if (true) {
        var x = 2;  // 同样的变量!
        console.log(x);  // 2
      }
      console.log(x);  // 2
    }
    
    function letTest() {
      let x = 1;
      if (true) {
        let x = 2;  // 不同的变量
        console.log(x);  // 2
      }
      console.log(x);  // 1
    }
    
    • const:允许声明一个不可变的常量。这个常量在定义域内总是可见的。与var变量不同,全局常量不会变为窗口对象的属性。需要一个常数的初始化器;也就是说,您必须在声明的同一语句中指定它的值(这是有道理的,因为以后不能更改)。
      注意: 常量在声明的时候可以使用大小写,但通常情况下全部用大写字母。
    // 定义常量MY_FAV并赋值7
    const MY_FAV = 7;
    
    // 报错,要有变量声明关键字
    MY_FAV = 20;
    
    // 输出 7
    console.log("my favorite number is: " + MY_FAV);
    
    // 尝试重新声明会报错 
    const MY_FAV = 20;
    
    //  MY_FAV 保留给上面的常量,这个操作会失败
    var MY_FAV = 20; 
    
    // 也会报错
    let MY_FAV = 20;
    
    // 注意块范围的性质很重要
    if (MY_FAV === 7) { 
        // 没问题,并且创建了一个块作用域变量 MY_FAV
        // (works equally well with let to declare a block scoped non const variable)
        let MY_FAV = 20;
    
        // MY_FAV 现在为 20
        console.log('my favorite number is ' + MY_FAV);
    
        // 这被提升到全局上下文并引发错误
        var MY_FAV = 20;
    }
    
    // MY_FAV 依旧为7
    console.log("my favorite number is " + MY_FAV);
    
    // 常量要求一个初始值
    const FOO; // SyntaxError: missing = in const declaration
    const FOO = 1;
    
    // 常量可以定义成对象
    const MY_OBJECT = {"key": "value"};
    
    // 重写对象和上面一样会失败
    MY_OBJECT = {"OTHER_KEY": "value"};
    
    // 对象属性并不在保护的范围内,下面这个声明会成功执行
    MY_OBJECT.key = "otherValue";
    
    // 也可以用来定义数组
    const MY_ARRAY = [];
    
    // 可以向数组填充数据
    MY_ARRAY.push('A'); // ["A"]
    
    // 但是,将一个新数组赋给变量会引发错误
    MY_ARRAY = ['B']
    
    • var:变量声明,无论发生在何处,都在执行任何代码之前进行处理。用var声明的变量的作用域是它当前的执行上下文,它可以是嵌套的函数,也可以是声明在任何函数外的变量。
    //变量提升
    
    bla = 2
    var bla;
    // ...
    
    // 可以理解为:
    
    var bla;
    bla = 2;
    

    相关文章

      网友评论

          本文标题:RN--TextInput组件

          本文链接:https://www.haomeiwen.com/subject/kfijvftx.html