首頁 > web前端 > js教程 > 3個值得收藏的實用nodejs軟體包

3個值得收藏的實用nodejs軟體包

青灯夜游
發布: 2020-10-27 17:43:06
轉載
1900 人瀏覽過

3個值得收藏的實用nodejs軟體包

影片教學推薦:nodejs 教學

Node. js已成為IT不可或缺的一部分。有了自己的軟體套件管理器NPM,Node可以發現許多非常有用的函式庫和框架。

在本文中,我將向您展示一些使用Node.js建立複雜動態應用程式的可能性。

1、Chalk:在終端機中設定輸出樣式

#在開發新的Node.js應用程式期間console.log 必不可少,不管我們用它來輸出錯誤、系統資料還是函數和co的輸出。但是,這確實會造成一些混亂,因為預設情況下 console.log 函數在終端機中輸出純白色文字。

Chalk改變了這一點。

只要像平常一樣從https://www.npmjs.com/package/chalk用 npm install chalk 安裝Chalk就可以了。

這是一個程式碼範例,以下是我的終端機的實際情況。

const chalk = require(‘chalk’)
// just blue font
console.log(chalk.blue(‘this is lit’))
// blue & bold font, red background (bg = background)
console.log(chalk.blue.bgRed.bold(‘Blue & Bold on Red’))
// blue font, red background
console.log(chalk.blue.bgRed(‘Regular Blue on Red’))
// combining multiple font colors
console.log(chalk.blue(‘Blue’) + ‘ Default’ + chalk.red(‘ Red’))
// Underlining text
console.log(chalk.red(‘There is an ‘, chalk.underline(‘Error’)))
// Using RGB-colors
console.log(chalk.rgb(127, 255, 0).bold(‘Custom green’))
登入後複製

輸出:

3個值得收藏的實用nodejs軟體包

#2、Morgan — 記錄HTTP請求中所有重要的資訊

3個值得收藏的實用nodejs軟體包

3個值得收藏的實用nodejs軟體包

##同樣,這在應用程式的開發中特別有用。因為HTTP請求是數位世界的心跳,所以完全控制對應用程式中影響它們的所有內容的重要性如此重要。

Morgan提供了有關此的重要資訊。

像往常一樣,透過

npm install morgan 從https://www.npmjs.com/package/morgan  取得它,在morgan中,我們可以定義我們想要獲得的關於請求的資訊。 如在描述的文件中所述,只需將其傳遞到morgan中間件中,因此我們將在下面的程式碼範例中使用它。
const express = require(‘express’)
const morgan = require(‘morgan’)
const app = express()
app.use(
morgan(
 ‘:method :url :status :response-time ms’
))
app.get(‘/’, function(req, res) {
  res.send(‘hello, world!’)
})
app.listen(8080)
登入後複製

因此,我們希望獲得有關傳入HTTP請求的以下詳細資訊:方法,請求的URL,請求的狀態以及回應所花費的時間。

在瀏覽器中開啟網站時,執行此程式碼應導致以下輸出:

#當我們在瀏覽器中開啟頁面時,它總是向伺服器發出GET-Request請求,因為我們請求了

/

,morgan也會顯示這個,以及我們的「hello, world!」網站被成功交付-這意味著狀態碼200。整個執行過程大約需要2.3毫秒,相當快。

但我們不僅要求我們的網站,而且瀏覽器總是要求一個favicon,找不到-錯誤狀態404。

讓我們來衡量一個實驗:我們更改程式碼,使每個回應之前有200毫秒的停頓。以下是程式碼中的變更:

app.get(‘/’, function(req, res) {
  setTimeout(function() {
    res.send(‘hello, world!’)
  }, 200)
})
登入後複製

現在,當我們再次在瀏覽器中要求頁面時,morgan將記錄此內容:

##現在,回應花費了200多個毫秒——就像我們想要的那樣。但最後,頁面再次成功交付,除了favicon,我們現在還沒有,而且只用了幾個MS,因為我們只延遲了對

/### 路由的請求。 ############3、Cheerio:使用類似jQuery的語法處理伺服器上已經存在的DOM############特別是當我們不提供靜態HTML檔案而是動態網站時,Cheerio非常實用。我們可以在瀏覽器的請求和回應之間直接修改請求的HTML程式碼,而客戶端不會知道。由於類似jQuery的語法,這特別容易。當然,您也可以使用Cheerio來做爬蟲和其他許多操作。 ######使用 ###npm install cheerio### 從 https://www.npmjs.com/package/cheerio  安裝。透過Cheerio,我們可以獲得有關HTML結構和內容的資訊:###
const template = `
  <div id=”main”>
    <h1 id=”message”>Welcome on our site</h1>
  </div>
`
const $ = cheerio.load(template)
console.log($(‘h1’).text()) // Welcome on our site
登入後複製
###將HTML新增至現有範本:###
let template = `
  <div id=”main”>
    <h1 id=”message”>Welcome on our site</h1>
  </div>
`
const $ = cheerio.load(template)
$(‘div’).append(‘<p class=”plum”>Paragraph</p>’)
template = $.html()
登入後複製
###現在的範本:###
<div id="main"> 
  <h1 id="message">Welcome on our site</h1>   
  <p class="plum">Paragraph</p>
</div>
登入後複製
###但是Cheerio最常用的情況可能是隨後將內容寫入範本:###
let template = `
  <div id=”main”>
    <h1 id=”message”></h1>
  </div>
`
const $ = cheerio.load(template)
$(‘h1’).append(‘New welcome message!’)
template = $.html()
登入後複製
###現在的範本:###
<div id=”main”> 
  <h1 id=”message”>New welcome message!</h1> 
</div>
登入後複製
###而且,您可以使用Cheerio做更多的事情。只需查看文件即可! ######更多程式相關知識,請造訪:###程式設計入門###! ! ###

以上是3個值得收藏的實用nodejs軟體包的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:cloud.tencent.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板