Angular的项目结构

前面咱们已经在咱们想要的位置顺利的建立了Angular项目,如今咱们就来看一下项目的结构吧。css

下面使咱们项目的总体结构,包括node的模板、src资源文件以及配置文件等。html

 

 

下面是根目录文件夹内的文件用途:前端

文件node

用途git

e2e/github

在 e2e/ 下是端到端(end-to-end)测试。 它们不在 src/ 下,是由于端到端测试实际上和应用是相互独立的,它只适用于测试你的应用而已。 这也就是为何它会拥有本身的 tsconfig.jsonnpm

node_modules/json

Node.js 建立了这个文件夹,而且把 package.json 中列举的全部第三方模块都放在其中。bootstrap

.editorconfig浏览器

给你的编辑器看的一个简单配置文件,它用来确保参与你项目的每一个人都具备基本的编辑器配置。 大多数的编辑器都支持 .editorconfig 文件,详情参见 http://editorconfig.org 。

.gitignore

一个 Git 的配置文件,用来确保某些自动生成的文件不会被提交到源码控制系统中。

angular.json

Angular CLI 的配置文件。 在这个文件中,你能够设置一系列默认值,还能够配置项目编译时要包含的那些文件。 要了解更多,请参阅它的官方文档。

package.json

npm 配置文件,其中列出了项目使用到的第三方依赖包。 你还能够在这里添加本身的自定义脚本

protractor.conf.js

Protractor使用的端到端测试配置文件,当运行 ng e2e 的时候会用到它。

README.md

项目的基础文档,预先写入了 CLI 命令的信息。 别忘了用项目文档改进它,以便每一个查看此仓库的人都能据此构建出你的应用。

tsconfig.json

TypeScript 编译器的配置,你的 IDE 会借助它来给你提供更好的帮助。

tslint.json

TSLintCodelyzer用的配置信息,当运行 ng lint 时会用到。 Lint 功能能够帮你保持代码风格的统一。

src文件夹:你的应用代码位于 src 文件夹中。 全部的 Angular 组件、模板、样式、图片以及你的应用所需的任何东西都在那里。 这个文件夹以外的文件都是为构建应用提供支持用的。

 下面是这些文件的做用:

文件

用途

app/app.component.{ts,html,css,spec.ts}

使用 HTML 模板、CSS 样式和单元测试定义 AppComponent 组件。 它是根组件,随着应用的成长它会成为一棵组件树的根节点。

app/app.module.ts

定义 AppModule根模块为 Angular 描述如何组装应用。 目前,它只声明了 AppComponent。 不久,它将声明更多组件。

assets/*

这个文件夹下你能够放图片等任何东西,在构建应用时,它们全都会拷贝到发布包中。

environments/*

这个文件夹中包括为各个目标环境准备的文件,它们导出了一些应用中要用到的配置变量。 这些文件会在构建应用时被替换。 好比你可能在生产环境中使用不一样的 API 端点地址,或使用不一样的统计 Token 参数。 甚至使用一些模拟服务。 全部这些,CLI 都替你考虑到了。

browserslist

一个配置文件,用来在不一样的前端工具之间共享目标浏览器

favicon.ico

每一个网站都但愿本身在书签栏中能好看一点。 请把它换成你本身的图标。

index.html

这是别人访问你的网站是看到的主页面的 HTML 文件。 大多数状况下你都不用编辑它。 在构建应用时,CLI 会自动把全部 js 和 css 文件添加进去,因此你没必要在这里手动添加任何 <script>或 <link> 标签。

karma.conf.js

Karma的单元测试配置,当运行 ng test 时会用到它。

main.ts

这是应用的主要入口点。 使用JIT 编译器编译本应用,并启动应用的根模块 AppModule,使其运行在浏览器中。 你还可使用AOT 编译器,而不用修改任何代码 —— 只要给 ng build 或 ng serve 传入 --aot 参数就能够了。

polyfills.ts

不一样的浏览器对 Web 标准的支持程度也不一样。 腻子脚本(polyfill)能把这些不一样点进行标准化。 你只要使用 core-js 和 zone.js 一般就够了,不过你也能够查看浏览器支持指南以了解更多信息。

styles.css

这里是你的全局样式。 大多数状况下,你会但愿在组件中使用局部样式,以利于维护,不过那些会影响你整个应用的样式你仍是须要集中存放在这里。

test.ts

这是单元测试的主要入口点。 它有一些你不熟悉的自定义配置,不过你并不须要编辑这里的任何东西。

tsconfig.{app|spec}.json

TypeScript 编译器的配置文件。tsconfig.app.json 是为 Angular 应用准备的,而 tsconfig.spec.json 是为单元测试准备的。

tslint.json

额外的 Linting 配置。当运行 ng lint 时,它会供带有 Codelyzer 的 TSLint 使用。 Linting 能够帮大家保持代码风格的一致性。

相关文章
相关标签/搜索