Sails 搭配几个 generators 来帮助您快速的搭建一个新的项目. 您也可以 创建您自己的 generators 来处理频繁的任务, 或者扩展功能 (例如,通过创建一个 generator 来为您钟爱的模板语言输出视图文件).
下列 generators 集成于 Sails:
sails generate new <appName>
在一个叫做 appName 的文件夹中创建一个新的 Sails 项目. 见sails new
有用法选项.
sails generate api <foo>
生成 api/models/Foo.js 和 api/controllers/FooController.js
sails generate model <foo> [attribute1:type1, attribute2:type2 ... ]
生成 api/models/Foo.js, 加入指定类型的 attributes 可选.
sails generate controller <foo> [action1
BEM (Block, Element, Modifier)是一种基于组件的Web开发方法。 其观点是将用户界面划分为独立的块。 即使使用复杂的UI,界面开发也变得简单快捷,并且允许复用现有的代码。
功能独立的页面组件,可以重复使用。 在HTML中,块由class属性表示。
特点:
块名称描述了它的目的(“它是什么?” - 菜单或按钮),而不是其状态(“它是什么样子”? - 红色或大)。
<!-- Correct. The `error` block is semantically meaningful -->
<div class="error"></div>
<!-- Incorrect. It describes the appearance -->
<div class="red-text"></div>
这确保了重新使用块或将它们从一个地方移动到另一个地方是好的。
node 的 web 框架 express
和 sails
下的应用在启动时都不会因为代码的更改自动重启,开发时每次改一下代码手动重启一下应用很相当的麻烦,利用工具 nodemon
可以解决这个问题。
安装 nodemon
$ npm i -g nodemon
启动并监听文件的变化
$ nodemon ./app.js
参考 http://stackoverflow.com/questions/18687818/auto-reloading-a-sails-js-app-on-code-changes
...用 gulp-pug 编译 pug 文件很方便,不过也会出现因 pug 文件中语法出错而编译出错的情况,这时 gulp.watch 就停止了,需要手动重新启动非常的不方便。利用插件 gulp-notify 可以很方便的解决这个问题。
var gulp = require('gulp'),
pug = require('gulp-pug'),
notify = require('gulp-notify');
gulp.task('pug', function(){
return gulp.src('pug/*/*.pug')
// .pipe(plumber())
.pipe( pug({ pretty: true }).on('error', notify.onError( (error) => { return `pug went wrong, ${error}`; } )) )
.pipe(gulp.dest('page'));
});
这样,gulp.watch
进程就不会停止了,还会继续监听 pu
可以利用修改环境变量 PS1 来修改终端提示文字,例如
$ export PS1="\u@\h:\W$ "
将上述命令增加到 ~/.bashrc
文件中。
变量 PS1 中的变量及其的具体含义如下