從零開始node全棧學習筆記

2021-08-13 08:55:31 字數 3014 閱讀 9162

計畫寫乙個node全棧的學習過程,不定期更新,因為不想給自己的定位只是前端開發,想多了解後端的學習。筆記最初是記在有道雲筆記的,現在分享出來,如有問題可以請各路大神指點。

首先需要乙個伺服器。

使用遠端登入工具(如x-shell或secure)登入終端:

ssh username@ip
輸入對應的密碼

安裝node

參考鏈結

因為我們使用的是ubuntu 16.04,採用先安裝,後公升級的方式。

首先安裝node和npm:

apt install nodejs-legacy

apt all npm

這樣得到的node 和 npm 的版本比較低,

node -v

node4.2.6

npm -v

v3.2

然後安裝node版本管理工具n,然後再公升級(這裡使用n,而非nvm,二者皆為node版本管理工具,可根據情況自行選擇,但最好不同時安裝)。npm安裝的模組路徑一般為/usr/local/lib/node_modules(可以使用npm root -g命令檢視你的系統中全域性的路徑)

npm install -g n

n lates

安裝完了,來看看node的版本

v4.2.6
還是之前的版本,安裝了node的版本管理工具n指定node版本無效。去網上找了一些資料,大概是因為node的安裝目錄和n預設的目錄不一致,通過n_prefix變數來修改 n 的預設node安裝路徑。

具體可參考鏈結.

首先,檢視node當前安裝路徑:

which node

/usr/local/bin/node

接下來,編輯環境變數。(我並未使用上述參考鏈結中的方式編輯,因為目前我認為我需要全域性所有的使用者都修改到這個變數,設定環境變數以及方法的區別具體可參考鏈結,參考鏈結2)

sudo vi /etc/profile  #sudo是必須的
然後在檔案尾追加上面的node安裝路徑:

export n_prefex=/usr/local/bin/node

export path=$n_prefix/bin:$path

環境變數更改後,在使用者下次登陸時生效,如果想立刻生效,則可執行下面的語句:

source /etc/profile
確認一下環境變數是否生效:

echo $n_prefix

/usr/local/bin/node

然後使用最新版本的node:

sudo n lts #sudo必須
最後,檢視一下node和npm的版本

node -v

v8.9.1

npm -v

5.5.1

至此,成功通過設定n_path使用n管理了node版本

專案設定

node後端**位置:

/home/node/node-serve
node前端頁面**:

/home/node/node-web
在此附上一些linux設定快捷鍵的方法。

vi /etc/vim/vimrc
然後在檔案中加入

set tabstop=4

set nu

set autoindent

常用vi命令

node後端

需要express框架,假如全域性安裝(-g)無效後需要在使用目錄再次安裝,

檢視express版本

express --version
發現並未安裝node-express,根據提示安裝

apt install node-express-generator
再次檢視express版本,無錯即安裝成功

配置node環境變數,開啟環境變數配置檔案

vi /etc/profile
接下來

export node_home=/usr/local/bin/node

export path=$node_home/bin:$path

為使環境變數生效

source etc/profile
接下來是乙個server.js

var express = require('express'); // express 框架

var path = require('path');

//__dirname: 當前目錄

// path.resolve(__dirname, '..') 相當於 cd ../,即開啟上層目錄

// 處理請求/index.htm

var new_path = path.resolve(__dirname,'..');

var pagesrc = new_path + '/node-web' + '/index.htm';//取出nodeweb下的index.htm頁面

res.sendfile(pagesrc);

}) var host = server.address().address

var port = server.address().port

console.log('訪問位址為 http: //%s:%s', host, port)

})

執行nodejs伺服器:

node server.js

從零開始 Python學習筆記(棧,佇列)

棧 堆疊 是一種可存入資料 訪問 刪除等元素的容器 特點 後進先出 棧實現 線性表 鍊錶 例 class nullstackerror baseexception 自定義空棧異常 definit self super init null stack error class mystack defin...

3 15學習筆記 從零開始

開啟python的方法 windows 環境 cmd 命令列輸入 python 另一種使用方法 先編寫程式在通過字尾為.py來儲存,然後再用cmd開啟 好處 修改時比較方便,可以直接拿滑鼠去消除或者新增 print 輸出括號中得字元 命名變數 直接命名用等號連線。不需要提前命名 print type...

從零開始的Unity學習筆記

unity是用於遊戲開發和三維互動內容的開發工具,是乙個遊戲引擎。為了讓移動端的遊戲開發得到統一。unity可以開發2d和3d遊戲。遊戲的核心 渲染引擎 物理引擎 碰撞檢測系統 音效 指令碼引擎 動畫系統 人工智慧 網路引擎 場景管理 本人學習unity所使用的unity版本號為2019.3.13f...