1.错误:Express Command not found
最初操作:跟着《nodejs开发指南》敲npm install -g express,安装好了,就在linux命令行敲express --help就出现上面的原因了。
解决方法:在安装一个包npm install -g express-generator
原因:express3+已经把创建一个APP的功能分离出来为express-generator,没它你创建不了应用程序
2.express -t ejs microblog创建的不是ejs模板引擎而是jade模板引擎
最初操作:跟着《nodejs开发指南》在命令行敲express -t ejs microblog是用来创建应用程序的,应用程序的名字叫microblog、模板引擎是ejs
出现情况:但是通过查看microblog文件夹中的package.json中知道创建出来的不是ejs模板而是jade模板引擎
解决方法:版本不一样,用错命令了,应该是express -e microblog(-e就是ejs模板)
3.node app.js 启动应用没效果
最初操作:跟着《nodejs开发指南》在命令行敲node app.js,然后就用浏览器访问监听的3000端口
出现情况:访问不到页面
解决方法:版本不一样,用错命令了,应该是npm start
4.安装了ejs后,如何使用ejs的layout模板
1.安装express-partials
2.在cmd中切换到项目目录,运行npm install express-partials或者在 package.json 里面的 dependencies 添加 "express-partials": "*"。然后在项目目录下运行 npm install 。
3.然后在app.js 里面引用 express-partials,引用方法:
1.添加引用 var partials = require('express-partials');
2.在 app.set('view engine', 'ejs'); 下面添加 app.use(partials());
4.在需要引用模板的地方调用 layout:'模版名称' 示例
app.get('/reg', function (req, res) {
res.render('reg', {
title: '用户注册',
layout: 'template'
});
});
- 5.直接使用include
5.var flash = require('connect-flash'); 安装 connect-flash Express 3.x以上版本
6.连接数据库
app.use(session({
secret: settings.cookieSecret,
store: new MongoStore({
url: 'mongodb://localhost/blog'
})
}));
7.视图交互
app.use(function(req, res, next){
console.log("app.usr local");
res.locals.user = req.session.user;
res.locals.post = req.session.post;
var error = req.flash('error');
res.locals.error = error.length ? error : null;
var success = req.flash('success');
res.locals.success = success.length ? success : null;
next();
});
8.mongodb使用_id主键
var BSON = require('bson').BSONPure;
BSON.ObjectID.createFromHexString(this._id),把Id转成可以删除的主键
_本站文章为 宝宝巴士 SD.Team 原创, 转载务必在明显处注明:(作者官方网站: 宝宝巴士 ) _
_转载自【宝宝巴士SuperDo团队】原文链接: http://www.jianshu.com/p/9bb1414ce682