我正在构建一个MEAN应用程序,并构建了一个基本的角度应用程序模板。然后我继续使用
生成expressjs应用程序npm install express-generator -g
和
表达myapp
我读过所有服务器端的东西都应该进入生成的public
文件夹。我删除了生成的公共文件夹中的所有内容,并将我的角度应用程序放在那里。
以下是指向我的Github Repo包含该应用的链接。
将我的应用程序放入公用文件夹后,我运行了命令
DEBUG = myapp npm start
开始运行它。它工作得很好所以我开始仔细研究生成我的Express JS的文件夹和文件。
当我看到views文件夹时,我浏览了一些文件夹。它包含.jade
个文件,我知道jade只是一种编写一些.html
文件的简化方法,但我想知道为什么有一个html视图的文件夹在公共文件夹之外。
如果公共文件夹应该包含客户端应用程序,那么为什么还有另一个带有' html'的视图文件夹?在里面?或者我在这里遗漏了什么?
这是根据您不知道的情况从应用程序构建的树。
.
├── app.js
├── bin
│ └── www
├── package.json
├── public
│ └── MyAngularApp
├── routes
│ ├── index.js
│ └── users.js
└── views
├── error.jade
├── index.jade
└── layout.jade
答案 0 :(得分:3)
如果您使用的是Angular,可能您只想将服务器用作API,因此不需要views
文件夹。
如果要直接从服务器返回动态内容,则需要使用视图文件夹。
例如,您可以返回包含某些内容列表的页面。然后在您的控制器中进行查询,将结果传递给视图,编译并返回HTML。
如果您知道PHP是您在PHP应用程序中通常所做的事情。
但是使用nodejs更容易制作API然后使用angular或React制作客户端应用程序(我更喜欢)