Sail.js官方文档阅读笔记(一)——总体结构

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wuqingdeqing/article/details/84678926

sails.js是一个后端开发框架,它是基于Node的著名框架express之上的。当前工作接手了一个系统,该系统的console部分是以sails.js完成其前后端功能的,故学习了sails.js的部分官方文档,特以此系列笔记以记之。因初学乍练,如有错误,欢迎指正。

在官网中,使用Sails框架项目的基本结构如下图所示:

1.package.json

此文件是npm的标准包管理文件,它包含了应用所依赖的所有Node模板名与版本。

2.app.js

此文件是Sails项目标准的入口。

当开发者使用sails lift来启动Sails项目时,app.js文件不会执行。该文件即是一种不用输入命令而更简单的启动方式,是应用最常见的启动方式。

3.api

api文件夹中包含了应用后端的主要逻辑,它包含了MVC框架中的M和C。

它如今包含了以下模块:

Controllers:它包含了处理进来的请求的后端逻辑。

Helpers:它包含了应用中可被调用的各种方法。

Models:它包含了应用中的数据结构。

Policies:它是应用中进行各类限制的中间件。

还可能有一些历史模块:

Hooks:它是可以向Sails内核中添加功能的模块。在启动Sails项目和处理请求之前,可以利用Hooks来运行定制的代码。它类似插件一样安装,但它总是为应用定制的。

Responses:它用来维护App中的HTTP状态码和表现。

Services:在Sails 1.0以前,它用于描述一些共有的功能。在新的版本中,推荐使用Helpers代替。

4.assets

此文件夹包含了项目所需的静态文件。

5.configs

此文件夹包含了对Sails项目的一些配置和定制文件。

6. task

此文件夹包含一套Grunt任务及其配置,绑定以提供便利。Grunt的集成主要为了绑定前后端的资源,但它也可用于运行各种开发任务,从浏览器编译到数据库迁移。

6.1 工作方式

Sails中绑定的资源管道是一组标准初始化设计的Grunt任务配置为了使应用更有一致性和成效。

Sails中的全部前后端资源流都是可定制的,它为箱外提供一些策略,可以满足应用前后端开发的各种需求。

6.2 Sails自动运行的任务

当输入以下命令时,Sails会自动运行 (tasks/register/ ) 里的任务。

sails lift

运行默认任务 (tasks/register/default.js).

sails lift --prod

运行prod任务 (tasks/register/prod.js).

sails www

运行构建任务(tasks/register/build.js).

sails www --prod (production)

运行buildProd任务 (tasks/register/buildProd.js).

6.3 定制

可以修改、删除、替换任何的Grunt任务来满足需求。可以添加自己的Grunt任务,只要在grunt/config目录中写一个js文件来配置这个新的任务,然后在合适的父任务中注册(在 grunt/register/*.js)。

6.4 必须使用Grunt

不是,可以禁用。删除Gruntfile或者禁用Grunt hook即可。

6.5 若无前端

可以使用。

如果确保一直无须前端,可以生成一个Sails应用并用使用--no-frontend。

7.views

此文件夹包含了定制的视图。

创建定制视图时,可以在此目录下创建文件夹并在其中创建ejs文件。为了使它能被客户端渲染,必须在config/route.js中创建路径,或者在controllers方法中使用res.view()。

猜你喜欢

转载自blog.csdn.net/wuqingdeqing/article/details/84678926
今日推荐