99re热视频这里只精品,久久久天堂国产精品女人,国产av一区二区三区,久久久精品成人免费看片,99久久精品免费看国产一区二区三区

Setting up a Node development environment

2018-05-15 17:26 更新
先決條件: 知道如何打開終端/命令行。 知道如何在開發(fā)計算機的操作系統(tǒng)上安裝軟件包。
目的: 在您的計算機上為Express(X.XX)設(shè)置開發(fā)環(huán)境。

Express開發(fā)環(huán)境概述

可以非常容易地設(shè)置您的計算機,以便開始開發(fā)Web應用程序。 本節(jié)提供了所需工具的概述,解釋了在Ubuntu,Mac OS X和Windows上安裝Node(和Express)的一些最簡單的方法,并說明如何測試安裝。

什么是Express開發(fā)環(huán)境?

開發(fā)環(huán)境包括安裝 Nodejs , NPM包管理器 >在本地計算機上。

包管理器是從預先準備的二進制包,安裝程序,操作系統(tǒng)包管理器或從源(如下面部分所示)安裝的。 網(wǎng)絡(luò)應用程序(以及其他庫,如模板引擎,數(shù)據(jù)庫驅(qū)動程序,身份驗證中間件,中間件以提供靜態(tài)文件)的依賴關(guān)系, 等等。)

href ="/ en-US / Apps / Fundamentals / Modern_web_app_architecture / MVC_architecture"> MVC模式。 應用程序生成器是可選的,因為您不需要使用此工具來創(chuàng)建使用Express的應用程序,或構(gòu)造具有相同體系結(jié)構(gòu)布局或依賴關(guān)系的Express應用程序。 我們將使用它,因為它使入門容易得多,并促進模塊化應用程序結(jié)構(gòu)。

注意:與其他一些網(wǎng)絡(luò)框架不同,開發(fā)環(huán)境不包含單獨的開發(fā)網(wǎng)絡(luò)服務器。 / 網(wǎng)絡(luò)應用程序創(chuàng)建并運行自己的web服務器!

還有其他外圍工具是典型開發(fā)環(huán)境的一部分,包括文本編輯器或用于編輯代碼的IDE,以及源代碼控制管理工具,例如 ://git-scm.com/"class ="external"> Git 安全管理您的代碼的不同版本。 我們假設(shè)您已經(jīng)安裝了這些工具(特別是文本編輯器)。

支持哪些操作系統(tǒng)?

可以在Windows,Mac OS X,Linux,Docker等許多"風格"上運行(nodejs上有一個完整的列表 / en / download /"class ="external">下載頁)。 幾乎任何個人計算機應該具有在開發(fā)期間運行Node所必需的性能。

在本文中,我們提供了針對Windows,Mac OS X和Ubuntu Linux的安裝說明。

你應該使用什么版本的Node / Express?

有很多版本的Node - 較新的版本包含錯誤修復,支持更多最新版本的ECMAScript (JavaScript)標準,以及對Node API的改進。

一般來說,您應該使用最新的 LTS(長期支持)版本,因為這將比"當前"版本更穩(wěn)定,但仍具有相對較新的功能(仍在積極維護)。 如果您需要LTS版本中不存在的功能,則應使用當前版本。

對于 ,您應始終使用最新版本。

數(shù)據(jù)庫和其他依賴關(guān)系?

其他依賴項,例如數(shù)據(jù)庫驅(qū)動程序,模板引擎,認證引擎等是應用程序的一部分,并且使用NPM包管理器導入到應用程序環(huán)境中。 我們將在后面的特定于應用程序的文章中討論它們。

安裝節(jié)點

要使用Express ,您必須先安裝 Nodejs 節(jié)點程序包管理器(NPM)。 以下部分介紹了在Ubuntu Linux 16.04,Mac OS X和Windows 10上安裝Nodejs的長期支持(LTS)版本的最簡單方法。

提示:以下部分顯示了在我們的目標操作系統(tǒng)平臺上安裝 Node NPM 的最簡單方法。 如果您使用其他操作系統(tǒng),或者只想查看當前平臺的一些其他方法,請參閱 >通過軟件包管理器安裝Node.js (nodejs.org)。

Windows和Mac OS X

在Windows和Mac OS X上安裝 Node NPM 非常簡單,因為您只需使用提供的安裝程序:

  1. Download the required installer:
    1. Go to?https://nodejs.org/en/
    2. Select the button to download the LTS build that is "Recommended for most users".
  2. Install Node by double-clicking on the downloaded file and following the installation prompts.

Ubuntu 16.04

安裝最新的LTS版本的Node 6.x最簡單的方法是使用包管理器從Ubuntu 二進制分發(fā)庫獲取它。 這可以很簡單地通過在終端上運行以下兩個命令來完成:

curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs

警告:不要直接從正常的Ubuntu存儲庫安裝,因為它們包含非常舊版本的節(jié)點。

    測試Nodejs和NPM安裝

    安裝測試該節(jié)點的最簡單方法是在終端/命令提示符中運行"version"命令,并檢查是否返回了版本字符串:

    >node -v
    v6.9.1

    還應安裝 Nodejs 包管理器 NPM ,并可以以相同的方式進行測試:

    >npm -v
    3.10.8

    作為一個稍微更激動人心的測試,讓我們創(chuàng)建一個非常基本的"純節(jié)點"服務器,當您在瀏覽器中訪問正確的URL時,在瀏覽器中打印出"Hello World":

    1. Copy the following text into a file named hellonode.js. This uses only Node features (not Express):
      //Load HTTP module
      var http = require("http");
      
      //Create HTTP server and listen on port 8000 for requests
      http.createServer(function (request, response) {
      
         // Set the response HTTP header with HTTP status and Content type
         response.writeHead(200, {'Content-Type': 'text/plain'});
         
         // Send the response body "Hello World"
         response.end('Hello World\n');
      }).listen(8000);
      
      // Print URL for accessing server
      console.log('Server running at http://127.0.0.1:8000/')
      

      代碼導入"http"模塊,并使用它來創(chuàng)建一個服務器( createServer()),用于偵聽端口8000上的HTTP請求。腳本然后向控制臺打印一個消息, 可以使用測試服務器。 createServer()函數(shù)將一個回調(diào)函數(shù)作為參數(shù),該函數(shù)在接收到HTTP請求時被調(diào)用 - 這只返回HTTP狀態(tài)碼為200("OK")的響應,而plain 文本"Hello World"。

      請注意:如果您不確切地了解這段代碼的作用,請不要擔心! 一旦我們開始使用Express,我們將更詳細地解釋我們的代碼!

    2. Start the server by calling node along with the script name in your command prompt:
      >node hellonode.js
      Server running at http://127.0.0.1:8000/
      
    3. Navigate to the URL (http://127.0.0.1:8000/). If everything is working, the browser should simply display the string "Hello World".

    使用NPM

    本身旁邊, NPM 是使用的最重要工具, 節(jié)點應用程序。 NPM用于獲取應用程序開發(fā),測試和/或生產(chǎn)所需的任何包(JavaScript庫),并且還可用于運行開發(fā)過程中使用的測試和工具。

    注意:從Node的角度來看, Express 只是另一個包,您需要使用NPM安裝,然后在您自己的代碼中使用。

    您可以手動使用NPM單獨提取每個所需的包。 通常,我們使用名為 package.json 的純文本定義文件來管理依賴關(guān)系。 此文件列出了特定JavaScript"包"的所有依賴關(guān)系,包括包的名稱,版本,描述,要執(zhí)行的初始文件,生產(chǎn)依賴關(guān)系,開發(fā)依賴關(guān)系,它可以使用的節(jié)點版本等 。 package.json 文件應該包含NPM需要獲取和運行應用程序的所有內(nèi)容(如果您正在編寫一個可重復使用的庫,可以使用此定義將您的包上傳到npm respository并使其可用 其他用戶)。

    添加依賴關(guān)系

    以下步驟說明如何使用NPM下載軟件包,將其保存到項目依賴項中,然后在Node應用程序中要求它。

    注意:在此處,我們將顯示抓取并安裝 Express 包的說明。 稍后,我們將介紹如何使用快速應用程序生成器指定此程序包及其他程序。 提供此部分是因為理解NPM如何工作以及應用程序生成器正在創(chuàng)建什么非常有用。

    1. First create a directory for your new application and navigate into it:
      mkdir myapp
      cd myapp
    2. Use the npm "init" command to create a package.json file for your application.?This command prompts you for a number of things, including?the name and version of your application and the name of the initial entry point file (by default this is index.js). For now, just accept the defaults:
      npm init

      如果顯示 package.json 文件( cat package.json ),您將看到接受的默認值,以許可證結(jié)尾。

      {
        "name": "myapp",
        "version": "1.0.0",
        "description": "",
        "main": "index.js",
        "scripts": {
          "test": "echo \"Error: no test specified\" && exit 1"
        },
        "author": "",
        "license": "ISC"
      }
      
    3. Now install the Express library in the myapp directory and save it in the dependencies list (you can omit the --save option if for some reason you don't want your package.json?to include Express).
      npm install express --save

      package.json 的依賴性部分現(xiàn)在將顯示在 package.json 文件的末尾。

      {
        "name": "myapp",
        "version": "1.0.0",
        "description": "",
        "main": "index.js",
        "scripts": {
          "test": "echo \"Error: no test specified\" && exit 1"
        },
        "author": "",
        "license": "ISC",
        "dependencies": {
          "express": "^4.14.0"
        }
      }
      
    4. To use the library you call the require() function as shown below.
      var express = require('express')
      var app = express()
      
      app.get('/', function (req, res) {
        res.send('Hello World!')
      })
      
      app.listen(8000, function () {
        console.log('Example app listening on port 8000!')
      })
      

      此代碼顯示最小的"HelloWorld"Express Web應用程序。 這將導入"express"模塊,并使用它創(chuàng)建一個服務器( app ),用于偵聽端口8000上的HTTP請求,并向控制臺打印一條消息,說明可用于測試服務器的瀏覽器URL 。 app.get()函數(shù)僅響應具有指定的URL路徑(\'/\')的HTTP GET 請求,在這種情況下,通過調(diào)用函數(shù)發(fā)送 > Hello World!消息。

      在"myapp"應用程序目錄的根目錄中創(chuàng)建一個名為 index.js 的文件,并為其提供上面顯示的內(nèi)容。

    5. You can start the server by calling node with the script in your command prompt:
      >node index.js
      Server running at http://127.0.0.1:8000/
      
    6. Navigate to the URL (http://127.0.0.1:8000/). If everything is working, the browser should simply display the string "Hello World!".

    開發(fā)依賴

    如果一個依賴關(guān)系只在開發(fā)過程中使用,你應該將它保存為一個"開發(fā)依賴"(這樣你的軟件包用戶不必在生產(chǎn)環(huán)境中安裝它)。 例如,要使用受歡迎的JavaScript Linting工具 eslint ,您將調(diào)用NPM,如下所示:

    npm install --save-dev eslint

    然后,以下條目將添加到應用程序的 package.json ::

      "devDependencies": {
        "eslint": "^3.10.0"
      }
    

    請注意:" Linters "是執(zhí)行靜態(tài)分析的工具 在軟件上,以便識別和報告遵守/不遵守一些編碼最佳實踐。

    運行任務

    除了定義和獲取依賴項之外,您還可以在 package.json 文件中定義命名的腳本,并調(diào)用NPM以使用 docs.npmjs.com/cli/run-script"class ="external"> run-script 命令。 這種方法通常用于自動運行測試和開發(fā)或構(gòu)建工具鏈的部分(例如,運行工具以縮小JavaScript,縮小圖像,LINT /分析您的代碼等)。

    注意:任務跑步者,如 Gulp /"class ="external"> Grunt 也可以用來運行測試和其他外部工具。

    例如,要定義腳本以運行我們在上一節(jié)中指定的 eslint 開發(fā)依賴項,我們可以將以下腳本塊添加到我們的 package.json 文件中(假設(shè) 我們的應用程序源在一個文件夾/ src / js):

    "scripts": {
      ...
      "lint": "eslint src/js"
    ? ...
    }
    

    為了進一步解釋, eslint src / js 是一個命令,我們可以在終端/命令行中輸入 eslint 對包含在 src / js 目錄。 將上面的內(nèi)容包含在我們應用程序的package.json文件中,為此命令提供了一個快捷方式 - lint

    然后,我們可以使用NPM運行 eslint :

    npm run-script lint
    # OR (using the alias)
    npm run lint
    

    此示例可能看起來不比原始命令短,但您可以在您的npm腳本中包括更大的命令,包括多個命令鏈。 您可以標識一個運行所有測試的單個npm腳本。

    安裝Express應用程序生成器

    Express應用程序生成器工具生成Express應用程序"框架"。 您可以如圖所示使用NPM安裝生成器( -g 標志全局安裝該工具,以便您可以從任何地方調(diào)用它):

    npm install express-generator -g

    要使用默認設(shè)置創(chuàng)建名為"helloworld"的 Express 應用程序,請導航至您要創(chuàng)建的應用程序并運行應用程序,如圖所示:

    express helloworld

    注意:您還可以指定要使用的模板庫以及一些其他設(shè)置。 使用 help 命令查看所有選項:

    express --help
    

    NPM將在您當前位置的子文件夾中創(chuàng)建新的Express應用程序,在控制臺上顯示構(gòu)建進度。 完成后,該工具將顯示您需要輸入的命令以安裝Node依賴項并啟動應用程序。

    新應用程式的根目錄中會有一個 package.json 檔案。 您可以打開此查看安裝了哪些依賴項,包括Express和模板庫Jade:

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

    使用NPM安裝hello world應用程序的所有依賴關(guān)系,如圖所示:

    cd helloworld
    npm install
    

    然后運行應用程序(這些命令對于Windows和Linux / Mac稍有不同),如下所示:

    # Run the helloworld on Windows
    SET DEBUG=helloworld:* & npm start
    
    # Run helloworld on Linux/Mac OS X
    DEBUG=helloworld:* npm start
    

    DEBUG命令創(chuàng)建有用的日志記錄,產(chǎn)生如下所示的輸出。

    >SET DEBUG=helloworld:* & npm start
    
    > helloworld@0.0.0 start D:\Github\expresstests\helloworld
    > node ./bin/www
    
    ? helloworld:server Listening on port 3000 +0ms

    打開瀏覽器并導航到 http://127.0.0.1:3000/ 查看默認的快速歡迎頁面。

    ; width:675px;">

    當我們來到關(guān)于生成一個框架應用程序的文章時,我們將更多地討論生成的應用程序。

      概要

      您現(xiàn)在已在您的計算機上啟動并運行了一個可用于創(chuàng)建Express Web應用程序的Node開發(fā)環(huán)境。 您還了解了如何使用NPM將Express導入到應用程序中,以及如何使用Express Application Generator工具創(chuàng)建應用程序,然后運行它們。

      在下一篇文章中,我們開始通過教程構(gòu)建一個使用此環(huán)境和關(guān)聯(lián)工具的完整的Web應用程序。

      也可以看看

      以上內(nèi)容是否對您有幫助:
      在線筆記
      App下載
      App下載

      掃描二維碼

      下載編程獅App

      公眾號
      微信公眾號

      編程獅公眾號