---
# System prepended metadata

title: 終端機 node.js
tags: [LineBot]

---

# 終端機 node.js
###### tags: `LineBot`

### 指令

:::info
- **ctrl + ~ 開啟終端機**

- **cd 換資料夾**
cd (資料夾名稱)
cd ../ 上一層

- **ctrl+c 中斷終端機正在執行**

- **↑ 可以執行執行過的指令**

- **node -v 檢查node版本**

- **node index.js (執行index.js)**
:::

### 安裝

- **指令："npm i 套件名稱" 安裝npm套件**

- **指令 : "npm i" 會讀取package.json的資料下載套件包**
`(所以套件資料不要上傳到git，會太佔容量)`



- **指令 : "npm init --yes" node初始化套件指令 (--yes為全部預設)**
`產生packge.json`
`產生完要在 package.json 增加 "type":"module"`



- **指令 : "npm i dotenv" 安裝<a href="https://www.npmjs.com/package/dotenv">dotenv</a>**
用來讀取.env檔案的套件
放在.env檔案裡的資料，用 process.env.(key值) 引用
*(.env通常放需要加密、不可以上傳至git的資料)*
![](https://i.imgur.com/6h0PE7B.png)




### 其他

- **yarn** => fecebook出的套件管理(跟npm一樣的，但指令不一樣)

- **使用 ECMAScript 語法**
ECMAScript 是瀏覽器使用的語法標準，在匯出匯入使用的語法是 import / export
必須在 ==packge.json 加入 "type": "module",==

:::success
>**講義資料：**

JavaScript 語法標準分為 CommonJS 和 <font color="red">ECMAScript</font>
CommonJS 是 Node.js 使用的語法標準，在匯出匯入使用的語法是 <font color="red">require / module.exports</font>
ECMAScript 是瀏覽器使用的語法標準，在匯出匯入使用的語法是 import / export
若要在 Node.js 專案使用 ECMAScript，必須要另外做設定，或是安裝套件 瀏覽器在模組化開發也有一些限制，不是隨便就能用 import / export

:::





-  **.gitignore**
  `建立".gitignore"檔案可以將不想上傳至git的檔案/資料夾紀錄進去，讓git忽略`
  ![](https://i.imgur.com/0hotqIx.png)
  
- **指令 : "git init"**
    檔案名稱顯示"綠色"代表新的檔案(未push的新東西)
    "灰色"代表忽略的東西
    ![](https://i.imgur.com/5SqN5ve.png)



- **-D與-g**
  - -D 為開發者工具，會紀錄於package.json， npm i 指令會自動安裝回來。限用於專案資料夾內使用套件。

  - -g 為全域安裝，所有的資料夾都可以用套件，但不會記錄在package.json裡面，換電腦的時候必須重新安裝套件。



