React入门 - 02(工程目录结构解析)

本章内容

目录

    • 1 外层“文件”说明
    • 2 各个“文件夹”说明

接着上一节的内容,我们继续这一节的内容–工程目录文件解析。打开上一节已经建好的工程 react-demo,详细的来了解一些里面的文件。

1 外层“文件”说明

在这里插入图片描述

  • .gitignore — 当我们使用 git 的时候,希望把代码传上去,但有些特殊的文件又不想传上去,这个时候我们可以通过在这个文件里面配置,从而实现某些文件在 git 提交的时候被忽略

  • package.json — 用来管理各个“依赖包”。在项目开发过程中,可能会需要引入一些第三方模块的“依赖”,而这些“依赖”统一放在这里进行管理

  • package-lock.json — 这是 package 的“锁文件”。可以帮助我们在安装“第三方包”的具体版本,以便保持团队编程的一致性

  • README.md — 项目说明文件。可以使用一些 markdown 语法来写一些项目说明

2 各个“文件夹”说明

  • node_modules — 这个文件夹用于存放项目的“依赖包”。一般不动里面的代码
    在这里插入图片描述

  • pulic — 放置 HTML模版文件、页面的图标图片等
    ① favicon.icon — 页面图标,即浏览器中页面标签前边的小图标
    ② index.html — 项目的首页 HTML 模版.下面是模版的具体代码及注释说明
    ③ manifest.json — 当你的 web app 用于移动设备或者桌面时,此文件用于定义一些元数据(设置桌面展示图标、对应网址、主题色等),具体说明可见这里
    ④ logo192.png & logo512.png — manifest文件中所用的图标图片
    ⑤ robots.txt — 网站所有者使用 /robots.txt 文件向网络机器人提供有关其网站的说明.即“机器人排除协议”,具体可见这里

<!DOCTYPE html>
<html lang="en"><head><meta charset="utf-8" /><link rel="icon" href="%PUBLIC_URL%/favicon.ico" /><meta name="viewport" content="width=device-width, initial-scale=1" /><meta name="theme-color" content="#000000" /><metaname="description"content="Web site created using create-react-app"/><link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" /><!--manifest.json provides metadata used when your web app is installed on auser's mobile device or desktop. See https://developers.google.com/web/fundamentals/web-app-manifest/--><link rel="manifest" href="%PUBLIC_URL%/manifest.json" /><!--Notice the use of %PUBLIC_URL% in the tags above.It will be replaced with the URL of the `public` folder during the build.Only files inside the `public` folder can be referenced from the HTML.Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" willwork correctly both with client-side routing and a non-root public URL.Learn how to configure a non-root public URL by running `npm run build`.--><title>React App</title></head><body><!-- 下边这行代码意思是:如果网页把这个 script 给禁掉了,那么需要给用户一个提示说,“你应该允许你的网页去解析 JavaScript”。这是一段容错的代码,可以使代码的“健壮性”更强。--><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><!--This HTML file is a template.If you open it directly in the browser, you will see an empty page.You can add webfonts, meta tags, or analytics to this file.The build step will place the bundled scripts into the <body> tag.To begin the development, run `npm start` or `yarn start`.To create a production bundle, use `npm run build` or `yarn build`.--></body>
</html>

在这里插入图片描述

  • src — 源代码所放置的目录。我们开发时,主要是在这里面去编写我们的代码
    ① index.js — 项目的“入口文件”, 下面是代码说明
    ② App.js — App 页面的代码可以在这里写
    ③ App.css — App页面的样式文件。可以根据项目开发需要进行删除或者修改
    ④ App.test.js — 自动化测试文件,可以做一些“自动化测试”。可以根据项目开发需要进行删除或者修改
    ⑤ index.css — 样式文件。可以根据项目开发需要进行删除或者修改
    ⑥ logo.svg — 图标。可以根据项目开发需要进行删除或者修改
    ⑦ reportWebVitals.js — 监测应用程序性能时,记录结果的文件
    ⑧ setupTest.js — jest 的自动化测试文件
// index.js 文件内容import React from 'react'; // 引入 react
import ReactDOM from 'react-dom/client';// 引入 react-dom 
import './index.css'; // 引入样式文件。在react可以通过这样的方式进行 css和js的分离,然后通过“模块”的方式嵌入到 js中
import App from './App'; // 后边的 ./App 其实是 ./App.js 的缩写。后缀可以省略,因为“脚手架工具”本身就会去当前目录下优先寻找后缀为 .js 的 App 文件并引入
import reportWebVitals from './reportWebVitals';// 测量应用程序中的性能时,用于记录其结果const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<React.StrictMode><App /></React.StrictMode>
);// If you want to start measuring performance in your app, pass a function
// to log results (for example: reportWebVitals(console.log))
// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
reportWebVitals(); 

到此,本章内容结束!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/605934.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

seata专题

什么是seata Seata是一个开源的分布式事务解决方案&#xff0c;旨在简化分布式事务的实现。它提供了一种简单而强大的方式来管理分布式事务&#xff0c;在分布式应用程序中保持数据的一致性和可靠性。 在传统的单体应用程序中&#xff0c;数据库事务可以很容易地实现。但是…

利用Python实现每日新闻早报推送

本文将介绍如何使用Python编写简单的逻辑&#xff0c;通过调用API接口实现每日新闻推送功能。 步骤&#xff1a; 导入所需的库&#xff1a; 在代码的开头&#xff0c;我们需要导入所需的库。通常&#xff0c;我们会使用requests库来发送HTTP请求&#xff0c;以获取新闻数据。 …

试除法求约数算法总结

知识概览 试除法求一个数的约数的时间复杂度是。 例题展示 题目链接 活动 - AcWing 系统讲解常用算法与数据结构&#xff0c;给出相应代码模板&#xff0c;并会布置、讲解相应的基础算法题目。https://www.acwing.com/problem/content/871/ 题解 用试除法求约数&#xff0c;…

Cadence记录

第三讲原理图的绘制和后续处理 一、绘制原理图 1.同一个页面内创建电气互联 连线方式2种 使用连线(wire) 使用网络名&#xff08;net alias&#xff09; 检查网络是否连接&#xff0c;如图显示则好着 2.不同页面之间创建电气互联 左右之分&#xff0c;表示在这个页面的信号是…

vue3用户权限管理(路由控制等)

在前端开发的过程中&#xff0c;我们需要做前端的权限管理&#xff0c;我们需要根据后端提供的信息来控制权限&#xff0c;这时候就需要根据用户的操作来进行权限控制了。逻辑稍微有一点绕&#xff0c;多理解就好了。 用户路由权限管理 大致的实现原理&#xff1a; 一般将路由…

适配器Adapters

1.适配器作用 主要是对底层的东西进行改造 2.适配器种类&#xff1a;容器适配器&#xff0c;迭代器适配器&#xff0c;仿函数适配器 2.1容器适配器&#xff1a; stack&#xff0c;queue他们两的底层结构都为deque&#xff0c;deque有好多功能&#xff0c;而stack&#x…

云卷云舒:【实战篇】Sql Server迁移

1. 简介 部分SQL Server数据库的数据量比较大&#xff0c;无法在业务割接期间完成SQL Server全量数据的迁移&#xff0c;这种场景下&#xff0c;可采用全量增量的方式进行数据迁移。 2. 迁移原理 SQL Server alwayson 1.任何一个SQL Server里都有个叫Log Writer的线程&…

CentOS 7 系列默认的网卡接口名称

CentOS 7 系列默认的网卡接口是随机的&#xff0c;如果要修改网卡名称以 eth 开头&#xff0c;有两种方式。 方法一&#xff1a;安装系统时 在安装界面移动光标到 Install Centos 7.按 TAB 键 在出现的代码的末尾添加&#xff1a;net.ifnames0 biosdevname0.按下回车开始安装即…

mybatis 增删改查

MyBatis 是一种持久化框架&#xff0c;主要用于简化数据库访问代码的编写。它允许开发者使用 XML 或注解来配置 SQL 映射&#xff0c;并提供了自动将数据库操作映射到 Java 对象的功能。以下是 MyBatis 中的基本增删改查操作的示例&#xff1a; 1. 增加&#xff08;Insert&…

微信管理大杀器:这个让工作高效不费力的利器你值得拥有!

在如今互联网社交时代&#xff0c;微信已经成为了人们生活中不可或缺的一部分。无论是与朋友聊天、分享生活&#xff0c;还是与客户进行商务洽谈&#xff0c;微信都扮演着重要的角色。对于个人而言&#xff0c;拥有一个高效管理微信私域的工具&#xff0c;将极大地提升运营效率…

可在图像中生成任意精准文本,支持中文!阿里开源AnyText

随着Midjourney、Stable Difusion等产品的出现&#xff0c;文生图像领域获得了巨大突破。但是想在图像中生成/嵌入精准的文本却比较困难。 经常会出现模糊、莫名其妙或错误的文本&#xff0c;尤其是对中文支持非常差&#xff0c;例如&#xff0c;生成一张印有“2024龙年吉祥”…

Arrays 数组工具类常用方法

java.util.Arrays类即为操作数组的工具类&#xff0c;包含了用来操作数组&#xff08;比如排序和搜索&#xff09;的各种方法 equals&#xff1a;比较两个数组是否相等 int[] arr1 new int[]{1,2,3}; int[] arr2 new int[]{1,2,3}; boolean equals Arrays.equals(arr1, ar…

Java学习苦旅(二十七)——Java中的集合框架

本篇博客将初略讲解Java中的集合框架及背后的数据结构。 集合框架介绍 Java 集合框架 Java Collection Framework&#xff0c;又被称为容器 &#xff08;container&#xff09;&#xff0c;是定义在java.util包下的一组接口 interfaces 和其实现类 classes 。其主要表现为将多…

【Linux】宝塔端口不通

1.问题描述&#xff1a;端口不通 以端口16588为例&#xff1a; 服务器16588端口是关闭的&#xff0c;防火墙规则是放通的&#xff0c;是由于服务器内的对应程序没有监听到 对应 的公网上 图1&#xff1a;端口检测 图2&#xff1a; 端口已放行 此时访问仍然不通&#xff0c;但…

基于SpringBoot的考务报名平台的设计与实现,java

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获取源码联系🍅 项目介绍 基于SpringBoot的考务报名平台的设计与实…

EM算法求解男女升高-Python

EM算法求解男女升高-Python 目前关于EM算法理论分析很全了&#xff0c;代码还比较少&#xff0c;一般就停留在最后的似然函数。 问题 现在一个班里有100个男生和女生。我们假定男生的身高服从正态分布&#xff0c;女生的身高则服从另一个正态分布。 求解两个正态分布的参数。…

Vue-6、Vue事件处理

1、点击事件 <!DOCTYPE html> <html lang"en" xmlns:v-model"http://www.w3.org/1999/xhtml" xmlns:v-bind"http://www.w3.org/1999/xhtml"xmlns:v-on"http://www.w3.org/1999/xhtml"> <head><meta charset&quo…

详细介绍如何微调 T5 Transformer 模型:用于构建 Stack Overflow 标签生成器的 Text2Text 传输转换器-含源码

在不断发展的自然语言处理 (NLP) 领域,T5(文本到文本传输转换器)模型已成为一种多功能模型。针对特定任务对该模型进行微调可以释放其全部潜力,使其成为人工智能爱好者和专业人士的一项关键技能。本文深入研究了T5 Transformer 模型的微调,特别是针对基于 Stack Overflow …

ip协议历史

今天的互联网&#xff0c;是万维网&#xff08;WWW&#xff09;一家独大。而在上世纪七八十年代&#xff0c;人们刚开始尝试网络连接时&#xff0c;那时出现了计算机科学研究网络、ALOHA 网、因时网、阿帕网等不同类型的网络&#xff0c;这些网络之间互相通信是个难题。 于是&…

openssl3.2 - 编译

文章目录 openssl3.2 - 编译概述OpenSSL源码下载编译目标如何编译前置环境 - perl前置环境 - VS前置环境 - NASM快速编译步骤编译 - Quick startInstall PerlInstall NASMUse Visual Studio Developer Command Prompt with administrative privilegesFrom the root of the Open…