windows下nodejs express安装及入门网站,视频资料,开源项目介绍
windows下nodejs express安裝及入門網站,視頻資料,開源項目介紹,pm2,supervisor,npm,Pomelo,Grunt安裝使用注意事項等總結
第一步:下載安裝文件
下載地址:官網http://www.nodejs.org/download/
第二步:安裝nodejs
下載完成之后,雙擊 node-v0.12.7-x64.msi,開始安裝nodejs,默認是安裝在C:\Program Files\nodejs,可以修改到其他路徑(如D:\nodejs)。
測試,進入cmd輸入 node -v 查看nodejs的版本。輸入 node -h 可以查看nodejs的幫助。node進入nodejs的命令行,兩次Ctrl+c退出。
D:\nodejs>node -v
v0.12.7
D:\nodejs>node -h
Usage: node [options] [ -e script | script.js ] [arguments]
D:\nodejs>node
> console.log('Hello World!');
Hello World!
undefined
>
(^C again to quit)
>
第三步:安裝相關環境
新版的nodejs集成了npm不需要另外下載安裝了,打開安裝目錄看到(如:D:\nodejs\node_modules\npm),直接用npm安裝相環境既可
可以使用cmd命令行輸入"npm -v"來測試是否成功安裝。
npm install -g express@3.5.0
npm install jade -g
npm install mysql -g
注意:直接通過npm install express -g 安裝后,運行express提示" express"不是內部或外部命令,原因是版本問題,改成3.5.0即可運行。
安裝其他組件,取決于環境搭建需求。
所有命令都是-g進行全局安裝的,這樣安裝的安裝包都在當前用戶下,在磁盤的所有其他地方都可以訪問到,比較方便。
代表安裝到NODE_PATH的lib里面,而-d代表把相依性套件也一起安裝。
如果沒有-g的話會安裝目前所在的目錄(會建立一個node_modules的文件夾),只能在當前目錄下使用。默認情況下上述組件都是安裝在C:\Program Files\nodejs\node_modules文件夾下 也是nodejs相關組件的自動查找路徑。
全局安裝在C:\Users\Administrator\AppData\Roaming\npm 目錄下(Administrator為window用戶目錄)。
第四步:安裝、測試 CoffeeScript
npm install coffee-script -g
確認安裝的命令:coffee -v,出現版本號表示成功安裝。
新建cs.js文件,輸入(for語句下面的console.log 需要縮進,否則會報錯):
for i in [0...3]
console.log "hello #{i}"
在該目錄下運行"coffee cs.js" 輸出:
D:\>coffee cs.js
hello 0
hello 1
hello 2
環境搭建完成。
第五步:創建一個express工程
(1).鍵入:express myapp (myapp是測試起的工程名稱)
系統會自動創建一個 C:\Users\Administrator\myapp 目錄,
包括:public routes views 三個文件夾,app.js package.json 兩個文件
app.js: 項目入口,可以改成index.js或其他。相當于php項目中的 index.php、index.html
node_modules: 存放項目的依賴庫
package.json: 項目依賴配置信息
public: 靜態文件如 css,js,img (可以改成static,在入口js那里對應修改)
routes: URL路由文件
Views: 頁面文件(Ejs或者jade的模板,默認是jade)
C:\Users\Administrator>express myapp
create : myapp
create : myapp/package.json
create : myapp/app.js
create : myapp/public
create : myapp/views
create : myapp/views/layout.jade
create : myapp/views/index.jade
create : myapp/routes
create : myapp/routes/index.js
create : myapp/routes/user.js
create : myapp/public/stylesheets
create : myapp/public/stylesheets/style.css
create : myapp/public/javascripts
create : myapp/public/images
install dependencies:
$ cd myapp && npm install
run the app:
$ node app
(2).C:\Users\Administrator\myapp>npm install
npm WARN deprecated static-favicon@1.0.0: use serve-favicon module
jade@1.11.0 node_modules\jade
(3).C:\Users\Administrator\myapp>node app
Express server listening on port 3000
(4).用瀏覽器打開地址:http://127.0.0.1:3000/
可以看到輸出:Express Welcome to Express
(5).在myapp下(或其他目錄都可以)新建 helloworld.js 代碼如下(端口號可以自己定義不跟其他的沖突就可以):
var http = require("http");
http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World!");
response.end();
}).listen(8888);
console.log("nodejs start listen 8888 port!");
(6).cmd進入helloworld.js目錄,輸入:node helloworld.js
D:\nodejs\code>node helloworld.js
nodejs start listen 8888 port!
(7).用瀏覽器打開地址:http://127.0.0.1:8888/
可以看到輸出:Hello World!
第六步:在項目中引用express包,在myapp目錄下創建helloworld2.js文件內容如下:
var express = require('express');
var app = express();
app.get('/', function(req, res){
res.send('hello world2');
console.log('hello world2');
});
app.listen('8808');
如果沒有安裝過express,那么首先需要在當前項目文件夾下安裝一個express
項目中引用的包,都會被安裝到【node_modules】文件夾
或者拷貝全局組件C:\Users\Administrator\AppData\Roaming\npm\node_modules 目錄到項目里。
D:\nodejs\code>node helloworld2.js
用瀏覽器打開地址:http://127.0.0.1:8808/
可以看到輸出:hello world2
第七步:安裝supervisor
每次修改代碼后會自動重啟,省事省力的工具。
安裝:npm install -g supervisor
運行方法,到項目目錄下執行:supervisor app.js
C:\Users\Administrator>cd myapp
C:\Users\Administrator\myapp>supervisor app.js
測試:修改app.js 加上一句:console.log("use supervisor!");后在控制臺輸出:
crashing child
Starting child process with 'node app.js'
Express server listening on port 3000
use supervisor!
同樣要啟動其他js把node xxx.js 換成 supervisor xxx.js 如:
C:\Users\Administrator\myapp>supervisor helloworld2.js
第八步:安裝 forever pm2進程管理器
安裝:npm install -g forever
虛擬機一關node服務就關了,不過forever可以讓node服務不停止,forever是一個簡單的命令式nodejs的守護進程,能夠啟動,停止,重啟App應用。
forever完全基于命令行操作,在forever進程之下,創建node的子進程,通過monitor監控node子進程的運行情況,一旦文件更新,或者進程掛掉,forever會自動重啟node服務器,確保應用正常運行。
注:現在forever現在比較少人了,一般用pm2管理nodejs
pm2 是一個帶有負載均衡功能的Node應用的進程管理器。當你要把你的獨立代碼利用全部的服務器上的所有CPU,并保證進程永遠都活著,0秒的重載, PM2是完美的。
它非常適合IaaS結構,IaaS 基礎架構即服務,例如亞馬遜的AWS,IaaS對于不知道新推出的應用程序/網站會有多成功的創業公司來說非常有用。
用法。
注:pm2需要依賴包比較多,需要使用:-d 參數,直接使用npm install pm2 -g 命令會warn出錯。
$ npm install pm2 -gd # 命令行安裝 pm2
$ pm2 start app.js -i 2 #后臺運行pm2,啟動2個app.js
# 也可以把'max' 參數傳遞給 start
# 正確的進程數目依賴于Cpu的核心數目
C:\Users\Administrator\myapp>pm2 start app.js -i 2
[PM2][ERROR] Process 0 not found
[PM2] Process successfully started
Use `pm2 show <id|name>` to get more details about an app
$ pm2 start app.js --name my-api # 命名進程
$ pm2 list # 顯示所有進程狀態
$ pm2 monit # 監視所有進程
$ pm2 logs # 顯示所有進程日志
$ pm2 stop all # 停止所有進程
$ pm2 restart all # 重啟所有進程
$ pm2 reload all # 0秒停機重載進程 (用于 NETWORKED 進程)
$ pm2 stop 0 # 停止指定的進程
$ pm2 restart 0 # 重啟指定的進程
$ pm2 startup # 產生 init 腳本 保持進程活著
$ pm2 web # 運行健壯的 computer API endpoint (http://localhost:9615)
$ pm2 delete 0 # 殺死指定的進程
$ pm2 delete all # 殺死全部進程
運行進程的不同方式:
$ pm2 start app.js -i max # 根據有效CPU數目啟動最大進程數目
$ pm2 start app.js -i 3 # 啟動3個進程
$ pm2 start app.js -x #用fork模式啟動 app.js 而不是使用 cluster
$ pm2 start app.js -x -- -a 23 # 用fork模式啟動 app.js 并且傳遞參數 (-a 23)
$ pm2 start app.js --name serverone # 啟動一個進程并把它命名為 serverone
$ pm2 stop serverone # 停止 serverone 進程
$ pm2 start app.json # 啟動進程, 在 app.json里設置選項
$ pm2 start app.js -i max -- -a 23 #在--之后給 app.js 傳遞參數
$ pm2 start app.js -i max -e err.log -o out.log # 啟動 并 生成一個配置文件
你也可以執行用其他語言編寫的app ( fork 模式):
$ pm2 start my-bash-script.sh -x --interpreter bash
$ pm2 start my-python-script.py -x --interpreter python
0秒停機重載:這項功能允許你重新載入代碼而不用失去請求連接。
注意:僅能用于web應用,運行于 cluster 模式(默認模式)
$ pm2 reload all
第九步:安裝 Grunt(一切都可自動化)
Grunt是Javascript任務運行器。為什么需要任務運行器?
對于需要反復重復的任務,例如壓縮、編譯、單元測試、代碼檢查等,自動化工具可以減輕你的勞動,簡化你的工作。
為什么使用Grunt?
Grunt 有龐大的生態圈,并且每天都在增長。你可以自由地選擇數以百計的插件,幫助你自動化地處理任務。
用Grunt構建現有項目
1:全局安裝grunt命令:npm install -g grunt-cli
2:在項目的根目錄下新建一個Gruntfile.js文件,該文件為grunt的配置、初始化文件。
3:在packaget.json文件的devDependencies項中,添加grunt核心依賴以及需要的插件依賴。
"devDependencies": {
"grunt": "^0.4.5"
}
注:如果不想手動添加這些依賴,可以直接cmd到項目根路徑下運行:npm install grunt --save-dev
依賴會被自動寫入package.json的devDependencies項中。
關于Gruntfile的編寫規則,詳細請查看,Gruntjs中文文檔。
目前項目中用到的幾個gruntplugin:
jshint: 用于對JS語法進行強制檢查
csslint: 用于對css語法進行強制檢查
uglify: 用于壓縮項目文件
Gruntfile配置的寫法非常靈活并且隨意,支持對文件進行正則匹配等特性。
==============================================
國內nodejs的網站 http://www.cnodejs.org/
Node.js 新手入門 - CNode技術社區
https://cnodejs.org/getstart
Node.js 教程 | 菜鳥教程
http://www.runoob.com/nodejs/nodejs-tutorial.html
Node.js Frameworks
http://nodeframework.com/
簡介 | PM2
http://wohugb.gitbooks.io/pm2/content/index.html
Uspcat NodeJS視頻教程 - 愛酷學習網,免費高清視頻教程在線觀看
http://www.icoolxue.com/album/show/89
Node JS國外網站教學視頻(共15課時)
http://edu.51cto.com/course/course_id-127.html
Pomelo:網易開源基于 Node.js 的游戲服務端框架 - 夢想天空(山邊小溪) - 博客園
http://www.cnblogs.com/lhb25/archive/2012/12/02/pomelo-game-server-framewok-for-node-js.html
node.js+Express.js+Jade+MongoDB開發Web即時聊天系統視頻教程下載-菊花俠-ITPUB博客
http://blog.itpub.net/29370928/viewspace-1259577/
基于node.js+Express.js+Jade+MongoDB開發Web即時聊天系統
http://pan.baidu.com/s/1pJHOYE3
使用Node.js完成的第一個項目的實踐總結 - 曾健生的專欄 - 博客頻道 - CSDN.NET
http://blog.csdn.net/newjueqi/article/details/21625493
yanghua/FixedAssetManager_Server · GitHub
https://github.com/yanghua/FixedAssetManager_Server
?=========================================
Koa (koajs) -- 基于 Node.js 平臺的下一代 web 開發框架 | Koajs 中文文檔
http://koa.bootcss.com/
Koa首頁、文檔和下載 - Node.js 的 Web 框架 - 開源中國社區
http://www.oschina.net/p/koa
Koa 是下一代的 Node.js 的 Web 框架。由?Express?團隊設計。旨在提供一個更小型、更富有表現力、更可靠的 Web 應用和 API 的開發基礎。
Koa可以通過生成器擺脫回調,極大地改進錯誤處理。Koa核心不綁定任何中間件,但提供了優雅的一組可以快速和愉悅地編寫服務器應用的方法。
不過目前使用express的項目比較多,資料比較多,入門還是學習express比較好。
?
轉載于:https://www.cnblogs.com/zdz8207/p/nodejs_learn_note_1.html
總結
以上是生活随笔為你收集整理的windows下nodejs express安装及入门网站,视频资料,开源项目介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 摄像机多少钱啊?
- 下一篇: tiny210V2 Uboot kern