美文网首页
RN视频笔记

RN视频笔记

作者: hypercode | 来源:发表于2019-08-29 16:32 被阅读0次

23.

========================================

22.模块查找、引用规则:

    1.  require('xxx') 这样没有目录的,是引用 node_modules/xxx/index.js, 或者 node_modules/xxx/package.json 中 main 字段所指定的 js 文件。

    2.  require('./a')引用同目录下的 a.js 文件, .js 是被省略了。

    3.  require('..a/b') 引用父目录中的 a目录中的 b.js 文件;若 b 为目录名,则查找 b 目录中的 index.js 文件。

21.模块化:

引用语法:

export default moduleA; //a.js

import moduleA from ' ./a' //与 a.js 同目录的 b.js

20.npm install必须在 package.json 的文件中执行(正常的 RN 项目已经有了package.json),如果没有package.json,则用 npm init 创建该文件 。

重要参数:1. -g 全局安装,(可以在命令行直接执行的模块,否则不要带 g),

            2.--save 下载的同时写到 package.json 里。

node_modules随用随装,不上传。

19.推荐 Node5以上的版本,因为自带npm3,npm3以下不好用。

18.NODE

为什么RN 要学 NodeJS。1.NodeJS 提供 ReactPackager 的运行环境。2.提供 npm包管理器(node_modules),来安装第三方模块。3.提供代码参考规范(commonjs,规范模块,便于分拆、规范)

====================================================

17.ES6数组的新增方法(map、includes)

//数组查找元素

[1,2,3].includes(2); //true

[1,2,3].includes(4); //false

//字符串可用

'hello'.includes('hell'); //true

//map  返回等长的新数组,相当于简化的 for 循环

let odds = [1,3,5,7,9];

let evens = odds.map(i=>i+1);//[2,4,6,8,10]

常用场景:

let names =['tom','jerry'];

let nameTags = names.map(n=><Text>{n}<Text>)

16.ES6模块的导入导出

import xxx from '???'

15.ES6解构(仅仅是语法糖)

//数组

let[a,b,c] = [1,2,3];

console.log(a,b,c);

//对象

var props = {checked:false,data:{count:3,price:100}};

var {checked,data:{count}} = props;

console.log(checked,count);   //false 3

14.ES6扩展运算符... 好比是把压缩包解压

//解压数据

let a = [1,2,3];

console.log(...a)  //1 2 3

//解压对象

let z = {a:3,b:4};

let n = {...z};//复制对象

console.log(n);  //{a:3,b:4}

13.ES6箭头函数有两种写法:

      1.class 外部:

        let 函数名 = (参数)=>{内部逻辑};

       2.class 内部:

        class SomeComponent extends Component{

        方法名=(参数)=>{

                //内部逻辑

            };

    }

注意:如果箭头函数的代码块部分使用了大括号,一定要写 return,否则会返回 undefined。单行没有大括号的语句会自动返回该行的值。

12.ES6常量 const(es6),没有声明或声明后没有复制的话,变量值为 undefined

11.let (es6新增)和 var(旧),始终用 let 就好了

10.开发工具:webstorm、sublime、vscode(也可以用在 flutter)

9.JS 线上参考网站

MDN,js基础

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide

ES6

http://es6.ruanyifeng.com/

8.JS 技能栈

7. JS 经典书籍:

JS权威指南、JS 高级程序设计、JS 语言精粹

6.homebrew 用来安装系统级的模块,npm、yarn 用来安装 js 相关的模块(yarn 是 facebook 用来替换 npm 的工具)。

1.在开发者菜单中打开Live Reload,现在你只要一保存代码应用就会自动完整刷新。

2.最终所有 JS 代码都被用ReactPackager 打包到 main.jsbundle文件 里。

3.index.ios.js和 index.android.js 是索引所有文件的文件,包括资源文件。

4.debug 的时候hot reload 的原理是 ReactPackager builds jsbundle in real time. 实时生成 jsbundle。ReactPackager 是运行在 nodejs 上的,这也是为什么要装 node。

5.线上版本热更新的原理是:让用户下载替换 jsbundle 文件。

相关文章

  • RN视频笔记

    23. ======================================== 22.模块查找、引用规则...

  • ncRNA互作文献阅读笔记(一)——Interactions a

    本文为文献阅读笔记文献:Interactions and links among the noncoding RN...

  • RN笔记

  • Rn笔记

    创建项目: react-native init 项目名 运行项目:右击项目,选择在终端打开,输入命令:npm st...

  • RN笔记

    1、点击空白处收起键盘,在组件最外层加上 即可 2、使用阿里的提示插件,@ant-design/react-n...

  • RN笔记

    1、VSCode 代码格式化 2、Chrome 调试

  • React-Native学习笔记

    RN笔记 一. 常用命令 比如我们希望查看RN的所有历史版本,可以在命令行中输入: npm view react-...

  • React Native性能优化

    前几天看了某位大神的rn视频感触颇深,rn的性能优化道路虽然很艰难,但希望总会是有的。 1.优化Component...

  • RN学习笔记

    环境搭建: 安装npm和Node.js,Node.js下载地址 安装watchMan,该插件用于监控bug文件和文...

  • RN笔记—SectionList

    SectionList 是一个高性能的分组列表组件。它可以简单的给一组数据进行分组渲染,它支持一下的功能: 完全跨...

网友评论

      本文标题:RN视频笔记

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