javascript - 如何学习react.js?主要是代码阅读过程中出现了障碍
迷茫
迷茫 2017-04-11 12:48:13
[JavaScript讨论组]

有C,.net,java的相关经验。

最近开始学习react-native。

在我之前学过的那些语言,如果你要在文件里面使用相关方法,必须在文件中定义或者引入。

但react的使用非常隐蔽。比如redux,有一个action.js文件,里面用了dispatch()方法,dispatch到底是哪里冒出来的?

在这种情况下,阅读代码成了非常痛苦的事情。

另外,就算我之前做了功课,知道这个dispatch是redux中的。也大概知道实现什么功能。但使用过程中出现了问题。

我想要读一下源码.....再次凌乱了。redux模块有目录树,有成堆的文件。我如何得知dispatch到底在redux的哪个文件里实现的?

就算使用了ctags一类的插件,其实也是类似于全局检索,然后生成.tags文件。我点击dispatch,它会列出所有的dispatch方法.....列表之长.....

求教大家是怎么克服这方面的问题的?有什么解决办法吗?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(3)
PHP中文网

Redux 这个库其实非常小,全部源代码加起来大概 500 行左右吧,在你正式开始用它之前,你其实先应该对它的源代码结构有个大致的了解的。

比如说你提到的 dispatch,它的源码就在:https://github.com/reactjs/re...

当你开发项目的时候,这份源码也会出现在你的 node_modules 目录下,你应该配置好你的 IDE,使其能够检索该目录下的模块。

然而归根结底是你应该了解动态语言和静态语言的一些重要差异,比起 Java 等语言环境,你指望 IDE 对 JavaScript 做出精准的,指哪儿打哪儿的静态分析是很不现实的,所以你得学会在 runtime 期间去调试、追踪代码的运行,顺藤摸瓜去找到你先要找的代码。换句话说,根本原因是你的 JavaScript 经验还不够丰富,这并不是特定的某种方法可以让你立刻成长的,还得练。

伊谢尔伦

骚年,此时你需要 Redux 莞式教程:https://github.com/kenberkeley/redux-simple-tutorial。快上车吧。

PHP中文网

网上有很多关于 React.js 的学习资料。我也是从开始一直学过来的。后来自己整理了下学习过程,写了一本 React.js 小书。适合新手入门,也欢迎对 React.js 小书提意见,帮助小书改善。完全开源免费,放心地看!。
React.js 小书。一共分了三个阶段,目前前两阶段已经写完了。正在写第三阶段。

第一个阶段

  • Lesson 1 - React.js 简介

  • Lesson 2 - 前端组件化(一):从一个简单的例子讲起

  • Lesson 3 - 前端组件化(二):优化 DOM 操作

  • Lesson 4 - 前端组件化(三):抽象出公共组件类

  • Lesson 5 - React.js 基本环境安装

  • Lesson 6 - 使用 JSX 描述 UI 信息

  • Lesson 7 - 组件的 render 方法

  • Lesson 8 - 组件的组合、嵌套和组件树

  • Lesson 9 - 事件监听

  • Lesson 10 - 组件的 state 和 setState

  • Lesson 11 - 配置组件的 props

  • Lesson 12 - state vs props

  • Lesson 13 - 渲染列表数据

  • Lesson 14 - 实战分析:评论功能(一)

  • Lesson 15 - 实战分析:评论功能(二)

  • Lesson 16 - 实战分析:评论功能(三)

第二个阶段

  • Lesson 17 - 前端应用状态管理 —— 状态提升

  • Lesson 18 - 挂载阶段的组件生命周期(一)

  • Lesson 19 - 挂载阶段的组件生命周期(二)

  • Lesson 20 - 更新阶段的组件生命周期

  • Lesson 21 - ref 和 React.js 中的 DOM 操作

  • Lesson 22 - props.children 和容器类组件

  • Lesson 23 - dangerouslySetHTML 和 style 属性

  • Lesson 24 - PropTypes 和组件参数验证

  • Lesson 25 - 实战分析:评论功能(四)

  • Lesson 26 - 实战分析:评论功能(五)

  • Lesson 27 - 实战分析:评论功能(六)

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号