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行了

参考地址:http://www.jdon.com/45599

http://www.cnblogs.com/highsea90/p/4308794.html