首先我们可以看到底部一个
yarn.lock的文件,这个文件主要是项目依赖的安装包,他的一些版本号,会在这里做一些限制,这个文件不要动就好了。
readme.md,这个文件其实是项目的说明文件,他里面会有一些关于项目的说明,我们可以全部删除掉,自己用markdown的语言做一些相关的介绍
package.json,基本上每个脚手架工具都会有这个package.json这个文件,这就代表着,实际上这是node的包文件,这里会有脚手架工具以及项目的一些介绍,他可以让你的文件编程一个node的包,这个文件一般我们不会太动他。
gitignore,如果是用git管理代码的话,有些文件,不像放进仓库里,可以把文件定义在gitignore里面
node_modules,放的是一些这个项目里面的第三方的包,这些包不是自己写的,是脚手架工具,要实现自己的功能需要依赖一些包文件,这些包文件都放在node_modules里面,这里的东西也不动他,他是一些第三方的模块
public-favicon.ico,打开网页的时候,网页标题左上角会有一个很小的icon,favicon正好就是标题上那个小的icon。
public-index.html,这个是项目首页的html模板,模板非常的简单。值得一说的是里面有个<noscript>标签,如果网页把script给禁用掉了,这个时候,我们会给用户一个提示说,你应该在你的网页开启script的适配项或者说允许网页去解析js。这个一段容错的代码。
public-manifest.json,这个文件和一个概念有关系。在index里面引入了serviceWorker,我们知道了一个PWA的概念,它可以让我们页面,用户访问一次,再次访问的时候就会在本地有完整的缓存。而这个json文件,它里面定义了,如果这个网页可以当成一个app来使用,就可以把他存储在桌面上,有一个快捷方式,在手机上,或者网页上,可以通过这个快捷方式直接进入到我这个网址。这个图标怎么展示,就可以在icons里面定义这个快捷方式的图标。也可以定义快捷方式的网址。当然我们如果不用pwa,理论上我们也是不用这个文件的。这个文件删除了之后,index.html引入了manifest.json这个文件,这个时候也可以把他删除掉
src,这是项目开发的时候最重要的一个目录,他里面放的是项目的所有源代码。所有代码的入口就在src-index.js里面
src-index.js,可以看到,js文件里面引用了react,又引入的react dom。index是整个程序的入口文件,也就是整个项目从index.js里面开始逐行的执行,首先直接引入React包,之所以能够直接引用,是因为这个脚手架工具已经在项目里面帮我们安装好了react。所以可以直接用,还有react-dom。在react.js里面还引入了css文件,可以这么理解,react他的设计理念包涵很重要的一条,就是 all in js。以前将css和js的时候是相分离的,但是在react里面,css可以像js一样,通过模块的形式嵌入到里面。所以这是他到一个新的写法。接着引入了一个App。import..from..是es6里面提供的一个模块引入的语法。他有点像amd里面的require。其实就是js文件里面引入另外一个js文件。最后引入了一个serviceWorker。这个是什么东西呢,目前前端有一个比较新的概念,叫做PWA,全称是progressvie web application。他的理念是通过网页的形式写手机的app应用。引用serviceWorker实际上就是帮助我们借助网页去写app应用的功能。他有什么效果呢。假设我们引用了他,然后我们写了一个网页。然后上传到一台支持https协议的服务器上。那么这个时候,网页就会具备这样的一个特性,当用户第一次访问我们这个页面的时候,他需要联网才能看到这个网页。但是这个用户访问到这个网页之后突然断网了,如果这个项目引用了serviceWorker,就算是断网了,他依然可以访问到之前的那个页面。因为serviceWorker会帮助我们把网页存储在浏览器之内。所以下一次即使没有网络,也可以使用这个网页。所以是做这个功能用的东西。我们开发的时候如果需要PWA这个效果,可以删除
src-App.test.js,这个文件在index.js里面没有引用到,这个文件是自动化的测试文件,当我们做react或者vue项目的时候,他里面因为会涉及到一些函数式的编程。所以我们可以做一些自动化的测试。app.test.js就是自动化测试的文件。我们平常要是用不到,也可以把他给删除掉。

react工程目录简介的更多相关文章

  1. react 工程目录简介

    创建一个 todolist 项目,下图是其工程目录. node_modules文件夹 里面存放的是我们所建项目放所依赖的第三方的包 public文件夹 favicon.ico 图标文件,网页标题左上角 ...

  2. react第十八单元(redux中间件redux-thunk,redux工程目录的样板代码,规范目录结构)

    第十八单元(redux中间件redux-thunk,redux工程目录的样板代码,规范目录结构) #课程目标 中间件:中间件增强redux的可扩展性,实现功能复用的目的. redux-thunk异步逻 ...

  3. Linux-/proc目录简介

    Linux /proc目录简介 1.简单了解 以文件系统的方式为访问系统内核数据的操作提供接口 由linux内核提供:通过/proc文件系统,在运行时访问内核内部数据结构.改变内核设置的一种机制 pr ...

  4. nodejs学习笔记一:安装express框架并构建工程目录

    偶遇node是在一个阳光明媚的上午,无意间打开博客看到一片关于nodejs的介绍,通读全篇后,心情跌宕起伏,哎呀,这么好的东西我竟然现在才知道,这是最气的,于是马上开始制定学习nodejs计划,好了, ...

  5. 初始化 Gradle 工程目录(转自: 隔叶黄莺 Unmi Blog)

    最近重新在 Eclipse 中打开旧的 Maven 项目,总有些什么错误,备受折磨.期间试手了 Ant+Ivy, 现今试用了下 Gradle,感觉不错,它应该才是我真想要的,Maven 差不多该扔到一 ...

  6. android的helloworld工程目录学习

    android的helloworld工程目录学习 Android工程的主要目录有src.gen.Android X.X.bin.res等文件夹. 1.     Src文件夹 Src文件夹包含java源 ...

  7. Android Studio工程目录介绍

    来自知乎: Android Studio工程目录结构 .gradle 是gradle运行以后生成的缓存文件夹. .idea 是android studio/Intellij IDEA工程打开以后生成的 ...

  8. C#.bat文件清理工程目录

    另外一种方法是自己写一个bat文件来清理,非常方便,下面是自己写的验证过比较好用的方法. bat文件内容如下: echo 正在清理VS2010工程中不需要的文件 echo 请确保本文件放置在工程目录之 ...

  9. IOS的工程目录结构和生命周期

    IOS的工程目录结构和生命周期 ·simple table文件夹:工程相关源代码和配置文件 BIDAppDelegate :    委托的声明和实现 BIDViewController:    视图控 ...

随机推荐

  1. 文献综述八:基于JAVA的商品网站的研究

    一.基本信息 标题:基于JAVA的商品网站的研究 时间:2015 出版源:信息技术 文件分类:对java语言的研究 二.研究背景 本文主要介绍了系统的分析,设计和开发的全部过程. 三.具体内容 文献的 ...

  2. eclipse中注释快捷键

    手动注释: ①类注释:Shift+Alt+J ②方法注释:在方法上方输入/** 后点击回车 自动注释:点击菜单栏上的Window -->Preferences-->Java-->Co ...

  3. pjsip与QT进行适配

    pjsip是纯C语言写的一个sip协议库,整个代码写得还是比较模块化的,得益于此的设计,只要理解了pjsip的设计,就可以对其网络层进行扩展. 我们项目是QT作为主要开发工具,而PJSIP的库默认是利 ...

  4. 路由器中带宽设置(Bandwidth) 20MHZ/40MHZ

    原文是英文的,在这里:http://routerguide.net/setting-up-20-mhz-or-40-mhz-bandwidth-how-to-improve-wifi-network- ...

  5. (转)shell脚本之seq命令

    shell脚本之seq命令 原文:http://blog.csdn.net/paoxiaohui/article/details/52830595 seq 用于生成从一个数到另一个数之间的所有整数. ...

  6. Git~分支真的很轻

    轻,让人觉得很爽 所有源代码管理工具都有管理分支的功能,git当然也不例外,而且git的分支是非常轻的,不像tfs,svn那样,复制一大堆代码,git只记录变化的内容,有本地分支与远程分支之分,原则上 ...

  7. Java性能调优-jstack-jstat-jmap

    0. 必须在java进程的用户下执行 a). 先排查自己业务代码,再第三方的开源代码 b). 工具类都在jdk/bin目录下, 实现代码在tools.jar中 1. jstack-线程快照-死锁/阻塞 ...

  8. Hibernate 缓存机制详细解析

    一.why(为什么要用Hibernate缓存?) Hibernate是一个持久层框架,经常访问物理数据库. 为了降低应用程序对物理数据源访问的频次,从而提高应用程序的运行性能. 缓存内的数据是对物理数 ...

  9. .Net Mvc框架知识点

    一.实现Controller的依赖注入: 1.自定义继承DefaultControllerFactory 类的控制器工厂类并重写GetControllerInstance方法:(如:InjectCon ...

  10. net2.0实现net3.5特性,如扩展方法,Linq等

    差不多两年没碰net了,今天想做个小工具,于是打开了久违的VS2012,由于客户终端还是winxp时代,而且是net2.0,且升级存在限制,因此必需在2.0下开发,之前的常用库是3.5写的,而且因为3 ...