sails介绍
node.js的MVC框架,完全继承Express&socket.io的一些API
使用
全局安装
npm install -g sails
创建项目
sails new 项目名称
选2
选2
启动项目
sails lift
sails框架目录介绍
api
- MVC结构项目代码目录
- controller层
controller层尽量只做数据封装,视图转发和页面跳转
- models层
数据模型层,用来定义数据结构
- policies层
- response层
定义返回方法,可以直接使用在res对象上引用,比如res.ok()方法
- service
逻辑处理层,接受controller传入数据,数据业务逻辑
assets
- 资源文件目录,css、js、img等
config
- 配置文件目录
tasks
- 项目启动时自动执行的任务
views
- 视图目录,也就是页面
app.js
- node项目定义的启动文件,启动命令
node app.js
Gruntfile.js
任务管理器,配置、加载tasks的任务
package.json
- 项目定义文件,描述项目、依赖模块管理、启动文件管理
README.md - 介绍项目的文件
使用自动路由
修改config->blueprints.js->actions:true
创建路由控制
sails generate controller users zhuce login logout//这个users有login、logout等功能
自定义路由
config->routes.js
'方式 请求名':{响应方式:'路由'} 注:方式省略表示ALL,action方式可简写为字符串
'/': { view: 'index' },
'GET /users': {action: 'users/logout'},
也可:'GET /users': 'users/logout',
'/users/login': { action: 'users/login' },
'POST /users/zhuce': { view: 'users/zhuce' }
对主页模板进行渲染
config->routes.js
'/': function (req,res) {
req.session.logined="bbbbb";
res.view('index',{title:req.session.logined})
},
主页渲染方式2
在config->routes.js中修改根路由:
形如: ‘/’: ‘UsersController.index’,
在UsersController.js中添加主页路由:
形如:
index: async function (req, res) {
res.view('index',{title:99});
},
前台访问
http://localhost:1337
修改端口
config->local.js
module.exports = {
port:1338
}