Angular.js+Node.js + MongoDB
Angular.js用于客户端开发,用一个页面作为案例
工具:
-
Node.js用于服务器端开发
-
Express.js创建REST服务
-
数据库MongoDb
架构图:
安装express
sudo npm install -g express --registry=https://registry.npm.taobao.org
成功安装信息:
、express@4.14.0 /usr/local/lib/node_modules/express
├── escape-html@1.0.3
├── content-type@1.0.2
├── vary@1.1.0
├── etag@1.7.0
├── parseurl@1.3.1
├── methods@1.1.2
├── array-flatten@1.1.1
├── utils-merge@1.0.0
├── cookie-signature@1.0.6
├── merge-descriptors@1.0.1
├── encodeurl@1.0.1
├── content-disposition@0.5.1
├── cookie@0.3.1
├── fresh@0.3.0
├── range-parser@1.2.0
├── serve-static@1.11.1
├── path-to-regexp@0.1.7
├── depd@1.1.0
├── qs@6.2.0
├── debug@2.2.0 (ms@0.7.1)
├── finalhandler@0.5.0 (unpipe@1.0.0, statuses@1.3.1)
├── proxy-addr@1.1.2 (forwarded@0.1.0, ipaddr.js@1.1.1)
├── on-finished@2.3.0 (ee-first@1.1.1)
├── accepts@1.3.3 (negotiator@0.6.1, mime-types@2.1.13)
├── type-is@1.6.14 (media-typer@0.3.0, mime-types@2.1.13)
└── send@0.14.1 (destroy@1.0.4, statuses@1.3.1, ms@0.7.1, mime@1.3.4, http-errors@1.5.1)
生成express
//-e 是ejs,如果不写-e的话就默认jade
express yuyi -e
warning: option `--ejs' has been renamed to `--view=ejs'
create : yuyi
create : yuyi/package.json
create : yuyi/app.js
create : yuyi/public
create : yuyi/routes
create : yuyi/routes/index.js
create : yuyi/routes/users.js
create : yuyi/public/images
create : yuyi/views
create : yuyi/views/index.ejs
create : yuyi/views/error.ejs
create : yuyi/public/stylesheets
create : yuyi/public/stylesheets/style.css
create : yuyi/bin
create : yuyi/bin/www
install dependencies:
$ cd yuyi && npm install
run the app:
$ DEBUG=yuyi:* npm start
create : yuyi/public/javascripts
进入yuyi文件:
cd yuyi/
然后开始安装组件:
npm install
再启动express:
npm start
在浏览器输入:http://localhost:3000/就可以了
但是每次改完了代码,需要重启node,真麻烦了吧。不过有偷懒神器就是npm install supervisor,它可以帮你自动重启,真的很好。
安装MongoDb:
sudo npm install mongojs --registry=https://registry.npm.taobao.org
安装信息:
ongojs@2.4.0 ../node_modules/mongojs
├── thunky@0.1.0
├── parse-mongo-url@1.1.1
├── each-series@1.0.0
├── to-mongodb-core@2.0.0
├── xtend@4.0.1
├── once@1.4.0 (wrappy@1.0.2)
├── readable-stream@2.2.2 (buffer-shims@1.0.0, string_decoder@0.10.31, inherits@2.0.3, util-deprecate@1.0.2, process-nextick-args@1.0.7, core-util-is@1.0.2, isarray@1.0.0)
└── mongodb@2.2.11 (es6-promise@3.2.1, readable-stream@2.1.5, mongodb-core@2.0.13)
如果我不会写jade或者Ejs,就选择html。
以 Ejs 模板为例
让ejs模板文件 支持 html 格式
1.修改app.js
//让Ejs支持 html
app.engine('.html', ejs.__express);
app.set('view engine', 'html');
//app.set('view engine', 'ejs');
2.引入 ejs 模块
//手动添加 ejs 以便支持 .html
ejs = require('ejs');
3.修改 /views 目录下的入口文件后缀为 index.html
再重启node行了