在 ExpressJS Generator 中,Views 文件夹有什么用?

In ExpressJS Generator what is the Views folder for?

背景

我正在构建一个 MEAN 应用程序并构建了一个基本的 angular 应用程序模板。然后我继续使用

生成 expressjs 应用程序

npm install express-generator -g

express myapp

我读到所有服务器端的东西都应该放在生成的 public 文件夹中。我从生成的 public 文件夹中删除了所有内容,并将我的 angular 应用程序放在那里。

这是我的 Github Repo 的一个 link,其中包含该应用程序。

我的应用程序

将我的应用程序放入 public 文件夹后,我 运行 命令

DEBUG=myapp npm start

开始运行吧。它运行完美,所以我开始仔细查看生成我的 Express JS 的文件夹和文件。

观看次数

当我看到 views 文件夹时,我浏览了一些文件夹。它包含 .jade 文件,我知道 jade 只是编写一些 .html 文件的一种更简化的方式,但我想知道为什么 html 视图之外有一个文件夹 public文件夹。

问题

如果 public 文件夹应该包含客户端应用程序,那么为什么还有另一个包含 'html' 的视图文件夹?或者我在这里遗漏了什么?

备注

这是在您不知道的情况下从应用程序构建的树。

.
├── app.js
├── bin
│   └── www
├── package.json
├── public
│   └── MyAngularApp
├── routes
│   ├── index.js
│   └── users.js
└── views
    ├── error.jade
    ├── index.jade
    └── layout.jade

如果您正在使用 Angular,您可能希望将服务器用作 API,因此您不需要 views 文件夹。

当您想 return 直接从服务器动态内容时,需要视图文件夹。

例如,您想要 return 包含某项列表的页面。然后在您的控制器中进行查询,将结果传递给视图,HTML 被编译并 returned.

如果您知道 PHP 是您通常在 PHP 应用程序中执行的操作。

但是使用 nodejs 更容易制作 APIs 然后使用 angular 或 React(我更喜欢)制作客户端应用程序