MEAN的安裝與配置

文章首發(fā)微信公眾號:春哥府吭露。歡迎關(guān)注捞蛋。

前言

最近嘗試接觸Web后端技術(shù)孝冒,看了看基于Java、Python拟杉、Nodejs的各種框架庄涡,最終選擇了MEAN架構(gòu)進行學(xué)習(xí),理由主要包括三個方面:

  1. 輕量級搬设,入門門檻低穴店。
  2. 框架成熟撕捍,可參考資料多。
  3. 可以一并學(xué)習(xí)Angular和Mongodb泣洞。

本次學(xué)習(xí)歷時12天忧风,產(chǎn)出物是一個簡單的用戶管理系統(tǒng)。這篇博客將會記錄我在MEAN的安裝配置過程中的一些操作方法球凰,為日后再次上手提供一些支持狮腿。

node.js與npm安裝

首先引用官網(wǎng)的話來介紹一下node.js與npm。

Node.js? is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.

npm is the package manager for node .

本人Win8.1-64位系統(tǒng)呕诉,Windows的Node.js安裝包安裝里包含了npm缘厢。安裝方法非常簡單,從node.js官網(wǎng)下載對應(yīng)版本的msi安裝文件安裝即可甩挫。

MongoDB安裝

MongoDB是一種文件導(dǎo)向數(shù)據(jù)庫管理系統(tǒng)贴硫,由C++撰寫而成,以此來解決應(yīng)用程序開發(fā)社區(qū)中的大量現(xiàn)實問題伊者∮⒃猓——維基百科

安裝方法:

  1. 官網(wǎng)下載安裝包進行安裝。

  2. 將MongoDB/bin文件夾添加至系統(tǒng)PATH環(huán)境變量删壮。

  3. 安裝目錄下新建mongo.config配置文件贪绘,配置data和log目錄。
    ##store data here
    dbpath=D:\mongodb\data
    ##all output go here
    logpath=D:\mongodb\log\mongo.log
    ##log read and write operations
    diaglog=3

  4. 啟動MongoDB央碟。
    預(yù)配置:
    >mongod --config D:\mongodb\mongo.config
    ...
    >mongo
    MongoDB shell version: 2.6.6
    connecting to: test

  5. 添加至Windows本地服務(wù)税灌,這樣就可以隨機器開機啟動了。
    > mongod --config D:\mongodb\mongo.config --install

  6. 簡單的測試操作亿虽。以下代碼執(zhí)行了創(chuàng)建(轉(zhuǎn)換)數(shù)據(jù)庫菱涤,添加數(shù)據(jù),查找并顯示數(shù)據(jù)的操作洛勉。
    >mongo
    MongoDB shell version: 2.6.6
    connecting to: test
    >use usercollection
    swiched to db usercollection
    >db.usercollection.insert({ “username”:“testuser1″,“email”:“testuser1@testdomain.com” })
    ...
    >db.usercollection.find().pretty()
    ...

Express安裝

Express 是一個簡潔粘秆、靈活的 node.js Web 應(yīng)用開發(fā)框架, 它提供一系列強大的特性,幫助你創(chuàng)建各種 Web 和移動設(shè)備應(yīng)用收毫。

網(wǎng)上關(guān)于Express安裝的博客很多攻走,但方法不盡相同。主要差異原因在于Express版本的變化此再。文章主要參考Express官網(wǎng)指南進行安裝昔搂,Express版本4.x。

安裝方法:

  1. 使用生成器生成输拇。
    $ npm install -g express-generator

  2. 編輯依賴項摘符。
    根據(jù)項目需求修改package.json文件,在dependencies中添加MongoDB和Monk的依賴:
    "mongodb": "*",
    "monk": "*"

  3. 安裝。
    $ npm install

  4. 測試逛裤。成功后打開localhost:3000將會顯示Express主頁瘩绒。
    $ npm start

  5. 使用monk連接MongoDB。
    在app.js中添加以下代碼
    var mongo = require('mongodb');
    var monk = require('monk');
    var db = monk('localhost:27017/yourdbname');
    ...
    app.use(function(req,res,next){
    req.db = db;
    res.locals.user = req.session.user;
    next();
    });

  6. 后端調(diào)用數(shù)據(jù)庫方法
    var db = req.db;
    var collection = db.get('usercollection');
    //查詢
    collection.find({email:req.body.email,password:req.body.password},{},function(e,docs){});
    //插入
    collection.insert(req.body,function(err,doc){});
    //更新
    collection.update({email:req.body.olduser.email},req.body.newuser,{safe:true},function(e,docs){});
    //刪除
    collection.remove({email:req.body.email},{safe:true},function(e,docs){});

使用monk操作MongoDB的方法在網(wǎng)上并沒有查閱到相關(guān)文檔带族,也許是我查找的方式不對锁荔。另一種方法是使用mongoose操作,資料較全炉菲。

Angular安裝

AngularJS是一款開源JavaScript函式庫堕战,由Google維護,用來協(xié)助單一頁面應(yīng)用程序運行的拍霜。它的目標是透過MVC模式(MVC)功能增強基于瀏覽器的應(yīng)用嘱丢,使開發(fā)和測試變得更加容易§艚龋——維基百科

官網(wǎng)和百科上對Angular的解釋一如既往的深入難懂越驻,但估計大部分小白第一次接觸Angular只是被大牛告訴Angular出色的雙向數(shù)據(jù)綁定的功能〉劳担快速了解Angular可以參考文末文章《怎樣快速的學(xué)習(xí)AngularJS》缀旁。

Angular和Bootstrap不算是安裝了,在前端添加依賴就可(也可以用npm勺鸦、bower類似的工具進行配置與管理)并巍。js和css包可以在官網(wǎng)下載。

Express安裝完成后换途,在目錄中添加App文件夾存放前端文件懊渡,修改默認啟動入口,刪除Express中不需要的文件與文件夾军拟。

Ending

MEAN架構(gòu)的優(yōu)勢主要在于前段后端的一體化剃执,被譽為前端工程師的福音。在學(xué)習(xí)的過程中也接觸到許多項目生成方法如:

  1. mean.io
  2. 基于Yeoman生成器懈息,如generator-meanstack

不多作為初學(xué)者肾档,而且目標系統(tǒng)也很簡單輕小,因此沒有一開始就上手這種方法辫继。以后有機會可以嘗試怒见。

最后的最后,感謝一下給予幫助的博客文章們:

  1. 什么是MEAN全堆棧javascript開發(fā)框架
  2. IBM文檔庫:精通MEAN系列(推薦)
  3. 從零開始搭建Node.js, Express, Ejs, Mongodb服務(wù)器
  4. Node+Express+Mongodb+monk簡易入門教程
  5. How To Install MongoDB On Windows
  6. 從零開始NodeJs系列文章(推薦)
  7. 使用express4.x版和Jade模板重寫《nodejs開發(fā)指南》微博實例
  8. Angular學(xué)習(xí)筆記
  9. 怎么樣快速入門AngularJS
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末姑宽,一起剝皮案震驚了整個濱河市遣耍,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌低千,老刑警劉巖配阵,帶你破解...
    沈念sama閱讀 218,640評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異示血,居然都是意外死亡棋傍,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,254評論 3 395
  • 文/潘曉璐 我一進店門难审,熙熙樓的掌柜王于貴愁眉苦臉地迎上來瘫拣,“玉大人,你說我怎么就攤上這事告喊◆镏簦” “怎么了?”我有些...
    開封第一講書人閱讀 165,011評論 0 355
  • 文/不壞的土叔 我叫張陵黔姜,是天一觀的道長拢切。 經(jīng)常有香客問我,道長秆吵,這世上最難降的妖魔是什么淮椰? 我笑而不...
    開封第一講書人閱讀 58,755評論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮纳寂,結(jié)果婚禮上主穗,老公的妹妹穿的比我還像新娘。我一直安慰自己毙芜,他們只是感情好忽媒,可當我...
    茶點故事閱讀 67,774評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著腋粥,像睡著了一般晦雨。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上灯抛,一...
    開封第一講書人閱讀 51,610評論 1 305
  • 那天金赦,我揣著相機與錄音,去河邊找鬼对嚼。 笑死夹抗,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的纵竖。 我是一名探鬼主播漠烧,決...
    沈念sama閱讀 40,352評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼靡砌!你這毒婦竟也來了已脓?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,257評論 0 276
  • 序言:老撾萬榮一對情侶失蹤通殃,失蹤者是張志新(化名)和其女友劉穎度液,沒想到半個月后厕宗,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,717評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡堕担,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,894評論 3 336
  • 正文 我和宋清朗相戀三年已慢,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片霹购。...
    茶點故事閱讀 40,021評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡佑惠,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出齐疙,到底是詐尸還是另有隱情膜楷,我是刑警寧澤,帶...
    沈念sama閱讀 35,735評論 5 346
  • 正文 年R本政府宣布贞奋,位于F島的核電站赌厅,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏轿塔。R本人自食惡果不足惜察蹲,卻給世界環(huán)境...
    茶點故事閱讀 41,354評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望催训。 院中可真熱鬧洽议,春花似錦、人聲如沸漫拭。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,936評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽采驻。三九已至审胚,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間礼旅,已是汗流浹背膳叨。 一陣腳步聲響...
    開封第一講書人閱讀 33,054評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留痘系,地道東北人菲嘴。 一個月前我還...
    沈念sama閱讀 48,224評論 3 371
  • 正文 我出身青樓,卻偏偏與公主長得像汰翠,于是被迫代替她去往敵國和親龄坪。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,974評論 2 355

推薦閱讀更多精彩內(nèi)容