NodeJs——入門

来源:http://www.cnblogs.com/wanxiong/archive/2016/06/26/nodejs_intro.html
-Advertisement-
Play Games

關於NPM: npm 是 nodejs 的包管理和分發工具。它可以讓 javascript 開發者能夠更加輕鬆的共用代碼和共用代碼片段,並且通過 npm 管理你分享的代碼也很方便快捷和簡單。 一 NodeJs安裝與NPM管理 安裝 前往NodeJs官網,下載安裝包直接安裝。同時NodeJs預設包含N ...


關於NPM:

npm 是 nodejs 的包管理和分發工具。它可以讓 javascript 開發者能夠更加輕鬆的共用代碼和共用代碼片段,並且通過 npm 管理你分享的代碼也很方便快捷和簡單。

一 NodeJs安裝與NPM管理

安裝

前往NodeJs官網,下載安裝包直接安裝。同時NodeJs預設包含NPM模塊。後者需要更新到最新版本。-v 查看版本信息,有則安裝成功。某些版本不支持讀-v參數大小寫敏感,如報錯嘗試大寫-V.

node -v
v4.4.4
npm -v
2.15.1

更新npm模塊

node install npm -g

-g 參數代表全局安裝,windows下所有安裝的模塊文件一般存放在node安裝目錄下或C:\Users\Administrator\AppData\Roaming緩存目錄下。
去掉-g 本地安裝,npm在當前目錄下新建一個node_modules目錄,所下載的模塊存放在裡面。

卸載

通過uninstall從node_modules目錄下刪除模塊

#本地卸載
npm uninstall <name> 
#全局卸載
npm uninstall <name> -g

二 創建第一個NodeJs應用

使用express模塊創建應用。

首先下載express模塊

npm install -g express
express -V

同理,檢查是否安裝成功。還有兩個參數:-e或--ejs;-J或--jshtml。含義:
-e, --ejs add ejs engine support 添加ejs模塊引擎支撐
-J, --jshtml add jshtml engine support (defaults to jade) 添加jshtml模板引擎支撐

新版本express中不支持cmd命令行,所以上面express -V會報錯: 不是內部或外部命令,需下載express-generator

npm install -g express-generator

然後可以全局使用express命令了,隨便選擇一個文件夾(F:\Project\Nodejs)下創建應用:

express hello_world

cd hello_world 進入項目

cd hello_world
# 查看目錄結構
dir
#像這樣
# 2016/06/26  14:43    <DIR>          .
# 2016/06/26  14:43    <DIR>          ..
# 2016/06/26  01:41             1,442 app.js
# 2016/06/26  01:41    <DIR>          bin
# 2016/06/26  01:41               331 package.json
# 2016/06/26  01:41    <DIR>          public
# 2016/06/26  01:41    <DIR>          routes
# 2016/06/26  01:41    <DIR>          views
#                2 個文件          1,773 位元組
#                6 個目錄 161,019,293,696 可用位元組*

註意這裡有一個package.json文件,裡面dependencies屬性指定了當前項目依賴的模塊。啟動之前,需要執行npm install下載他們:

npm install

如果沒有package.json文件,這一步會報錯:

npm ERR! install Couldn't read dependencies

npm ERR! Windows_NT 6.1.7601

可以通過npm ini 生成預設的。在這裡,上面的express hello_world命令內部已經調用該命令,生成文件內容類似這樣:

{
  "name": "hello_world",
  "version": "0.0.0",
  "private": true,
  "scripts": {
    "start": "node ./bin/www"
  },
  "dependencies": {
    "body-parser": "~1.15.1",
    "cookie-parser": "~1.4.3",
    "debug": "~2.2.0",
    "express": "~4.13.4",
    "jade": "~1.11.0",
    "morgan": "~1.7.0",
    "serve-favicon": "~2.3.0"
  }
}

也可以安裝上面的模板,收到創建該package.json文件。值得一提的是,一個npm模塊package.json文件包含的信息遠比這裡豐富。

等待依賴庫下載完成。完成後多一個node_modules文件夾用於保存依賴庫。

至此,當前應用準備工作完成。啟動應用:

npm start

瀏覽器中輸入127.0.0.1::3000(預設埠)訪問

三 總結

個人經驗,希望能給從零到創建一個nodeJs應用的同學提供參考。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 回到目錄 本文來自於實踐中的不足 在最近開始過程中,遇到了一個問題,之前設計的工作單元UoW只支持Insert,Update,Delete三種操作,即開發人員可以將以上三種操作同時扔進工作單元,由工作單元UoW負責事件的處理,這種設計已經出現很多年了,大叔感覺也是不錯,思路就是在工作單元里添加三個字 ...
  • Vue.js介紹 Vue.js是當下很火的一個JavaScript MVVM庫,它是以數據驅動和組件化的思想構建的。相比於Angular.js,Vue.js提供了更加簡潔、更易於理解的API,使得我們能夠快速地上手並使用Vue.js。 如果你之前已經習慣了用jQuery操作DOM,學習Vue.js時... ...
  • 使用js製作一個簡單的產品放大圖 購物網站的產品頁經常會放有一個產品展示圖區。該圖區有一個功能就是產品圖的放大功能,移動左側的焦點區域,可以放大細節部分觀看,詳情如下圖。實現該功能的方法也非常簡單。 實驗:製作產品焦點放大圖。 所需技能:1、基本的獲取頁面元素的方法; 2、幾個簡單的事件; 3、會使 ...
  • 簡介:jQuery Lightbox圖片放大預覽代碼是一款可以在用戶點擊頁面中的小圖片時,將該圖片的高清版本以Lightbox的方式放大顯示在頁面的中間,提高用戶的體驗度。效果展示 http://hovertree.com/texiao/jqimg/6/效果圖如下: 源碼下載:http://hove ...
  • 1.Ajax:readyState(狀態值)和status(狀態碼)的區別readyState,是指運行AJAX所經歷過的幾種狀態,無論訪問是否成功都將響應的步驟,可以理解成為AJAX運行步驟,使用“ajax.readyState”獲得status,是指無論AJAX訪問是否成功,由HTTP協議根據所 ...
  • 談到閉包,人們常常會把匿名函數和閉包混淆在一起。閉包是指由權訪問另一個函數作用域中的變數的函數。創建閉包的常見方式,就是在一個函數內部創建另一個函數,仍以前面的 createComparisonFunction()函數為例 在標識的部分,它訪問了外部的變數 propertyName 即使這個函數被返 ...
  • 第一部分:用CSS實現佈局 讓我們一起來做一個頁面 首先,我們需要一個佈局。 請使用CSS控制3個div,實現如下圖的佈局。 第二部分:用javascript優化佈局 由於我們的用戶群喜歡放大看頁面 於是我們給上一題的佈局做一次優化。 當滑鼠略過某個區塊的時候,該區塊會放大25%, 並且其他的區塊仍 ...
  • 概述 觀察者模式又叫發佈 訂閱模式(Publish/Subscribe),它定義了一種一對多的關係,讓多個觀察者對象同時監聽某一個目標對象(為了方便理解,以下將觀察者對象叫做訂閱者,將目標對象叫做發佈者)。發佈者的狀態發生變化時就會通知所有的訂閱者,使得它們能夠自動更新自己。 觀察者模式的使用場合就 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...