webpack 创建的 React 项目,的基础目录树作用介绍

刚创建的最基础的目录由以下这些文件夹和文件组成

Typescript 当前目录的表示_html

1 . yarn.lock 文件

yarn.lock文件中存放的是,整个项目所依赖的第三方模块的各种各样的信息,其中包括模块名称,和模块具体的版本号。
这个文件基本不要乱动,一旦改错,整个项目都会崩溃,一般来说也不需要大家做任何的修改,放着就行了

2 . README.md 文件

关于项目的所有说明,都会写在这个文件里
项目该开始时,里面会有一些默认的项目说明,我们可以根据自己的需求删掉,并写上自己想表达的项目说明

3 . package.json 文件

这个文件呢,对你的项目进行了一个配置 或者 说明

Typescript 当前目录的表示_javascript_02

4 . .gitignore 文件

如果你使用 git(无论是github gitlab gitee) 进行项目管理,在上传项目时,有些文件不想上传到远程仓库,就可以把不想上传的项目,配置到这个文件夹里

5 . node_modules 文件夹

项目中所有依赖的第三方模块都存放在这个文件夹下,这个目录一般不用动,
当我们运行完 yarn run start 之后,把第三方模块生成好,这个文件就自动生成了。

6 . public 文件夹

public 文件夹下面有很多文件,一些图片文件可以不用管,主要看一下 index.html 这个文件,这个页面也就是我们项目一开始打开,看到的页面

<!DOCTYPE html>
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <!-- 设置了浏览器小图标 -->
    <link rel="icon" href="%PUBLIC_URL%/favicon.ico" />
    <!-- 设置了移动端 content属性值,width:可视区域的宽度,值可为数字或关键词device-width-->
    <!-- intial-scale:页面首次被显示是可视区域的缩放级别,取值1.0则页面按实际尺寸显示,无任何缩放 -->
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <!-- 主题颜色,这里显示的是黑色 -->
    <meta name="theme-color" content="#000000" />
    <meta
      name="description"
      content="Web site created using create-react-app"
    />
    <link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
    <!-- manifest新技术,三言两语说不清,用不到就删掉 -->
    <link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
    <title>React App</title>
  </head>
  <body>
    <!-- 加入你的浏览器不支持js语言,那就会提示这么一句话 -->
    <noscript>You need to enable JavaScript to run this app.</noscript>
    <div id="root"></div>
  </body>
</html>

7 . src 目录,也是最重要的一个目录

1 . (最重要的文件)页面入口执行的文件 index.js文件,其余同级目录下的所有文件都可以删掉,就这个不可以

// 项目初始化就默认引入的模块
import React from 'react';
import ReactDOM from 'react-dom';
// 可以在js文件中引入css文件,以前只能在html文件中引入css,现在可以在js中引入css
// 也是项目初始化默认自带的,可以删掉,没啥用,删了之后也把同级下的index.css文件删掉
// 也可以不删掉,作为一个全局的样式文件使用,定义一些全局样式,如p0+m0+bz
import './index.css';
// ./App其实是App.js的缩写,实际是引入了App.jsx页面文件
// 但这里只是单纯的引入而已,并没有挂在到页面上
// 需要执行 ReactDOM.render 代码,才会把App.jsx页面展示出来
import App from './App';
// 实现pwa技术,可以删掉,如果删掉这行,记得把下面的serviceWorker.unregister();也删了
// 也可以把同级的serviceWorker.js文件删了
import * as serviceWorker from './serviceWorker';

ReactDOM.render(
  <React.StrictMode>
    <App />
  </React.StrictMode>,
  document.getElementById('root')
);
serviceWorker.unregister();

2 . App.js 文件,其实是一个 jsx 文件,React 独特的文件后缀,就像Vue中的 .vue文件后缀一样,表示的是一个单页面组件
不同点是,.vue 文件更像 html 文件,.jsx 文件更像 js 文件,但本质上都是单页面组件,都是用来编写页面用的

// 整个jsx文件都是默认展示的页面,可以把整个文件删掉
import React from 'react';

// js中不但可以引入css,还可以引入图片
import logo from './logo.svg';
// 引入的css样式文件,对本页面进行样式修改
import './App.css';

function App() {
  return (

    // 这就是一段jsx语法的代码,看起来好像是html代码,其实不是的,是jsx语法
    <div className="App">
      <header className="App-header">
        <img src={logo} className="App-logo" alt="logo" />
        <p>
          Edit <code>src/App.js</code> and save to reload.
        </p>
        <a
          className="App-link"
          href="https://reactjs.org"
          target="_blank"
          rel="noopener noreferrer"
        >
          Learn React
        </a>
      </header>
    </div>


  );
}

export default App;

3 . App.test.js文件
一个自动化测试的文件,可留可不留

4 . 其余文件其实都可以删了,删除之后最初始的项目这样也是可以运行的

Typescript 当前目录的表示_css_03