[JS102] Module


Posted by yymarlerr on 2021-05-15

模組 module

  • 模組化:將很大的東西,切成一小小塊;功能切開來
  • 優點:把東西集結在 module,一次只要改一個地方
  • var a = require('<引入的 module 名稱>')

    a 為 module.exports = ,a 的名稱可以自由更改

新增 module

  • touch MyModule.js
  • 在 MyModule 這個檔案裡加入

    • module.exports = <輸出的東西>

      • 可以輸出功能、物件⋯⋯等
      •   var obj = {
          height: 180
          weight: 50
          add: function(n){
            return n + 3}
        module.exports = obj/>
        
    • exports.<想要輸出的東西名稱> = <想要輸出的內容>

      • 輸出物件
  • 在別的檔案要使用時,用 var a = require('./myModule.js') console.log(myModule.height, myModule.add(2))

    • 前面加 ./ 表示檔案路徑

npm

Node Package Manager

  • 用來管理套件用,可以透過 npm,上傳自己寫的套件,有點像套件倉庫的概念
  • package 是套件的意思:寫好功能時可以包裝成 package
  • 可以直接用別人寫的 package、library、module

安裝 npm

  • 在下載 node.js 時也同時有下載 npm
  • 使用 npm init 啟動
  • 啟動後資料夾裡會出現 package.json

package.json

  • 用來描述專案的檔案,所以別人只要有這個檔案,就知道你有用什麼 library,並且可以使用 node install 來根據你的 json 下載這些 "dependencies"
    • "devDependencies" 開發時才會用到的 library
  • 長得跟物件很像,唯 key 要用雙引號包起來
  • dependencies:依賴什麼,有裝什麼 library
  • "main":最主要的檔案
  • "scripts": { "<start>": "node test.js", } 代表輸入 時,node 會先執行 test.js 這個檔案(可以為其他東西),指令為 npm run start

json 全名為 JavaScipt object notation 「JavaScript 物件表示法」

安裝 module

  • npm install <module 名稱>
  • 下載結束會出現 node_modules 的資料夾,npm 會把所有下載的 module 都儲存在這個資料夾裡

Yarn










Related Posts

Dijkstra's Algorithm

Dijkstra's Algorithm

十分鐘、五步驟,SVG 動起來!

十分鐘、五步驟,SVG 動起來!

Day05 state 及 props 的應用

Day05 state 及 props 的應用


Comments