Koa2





Koa -- 基於 Node.js 平臺的下一代 web 開發框架

express 原班人馬重構出來的

https://koa.bootcss.com/


快速開始
nvm install 7
cnpm install koa
# 編輯 my-koa-app.js 文件 , 寫入代碼
node my-koa-app.js


報錯


cnpm install -g koa 全局安裝模塊 , 執行的時候找不到這個模塊


$ node first.js
module.js:538
    throw err;
    ^

Error: Cannot find module 'koa'
    at Function.Module._resolveFilename (module.js:536:15)
    at Function.Module._load (module.js:466:25)
    at Module.require (module.js:579:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (E:\Koa\first.js:1:75)
    at Module._compile (module.js:635:30)
    at Object.Module._extensions..js (module.js:646:10)
    at Module.load (module.js:554:32)
    at tryModuleLoad (module.js:497:12)
    at Function.Module._load (module.js:489:3)

安裝結果的信息 :
C:\Users\pc\AppData\Roaming\npm\node_modules\koa

cnpm i -g koa
Downloading koa to C:\Users\pc\AppData\Roaming\npm\node_modules\koa_tmp
Copying C:\Users\pc\AppData\Roaming\npm\node_modules\koa_tmp\_koa@2.4.1@koa to C:\Users\pc\AppData\Roaming\npm\node_modules\koa
Installing koa's dependencies to C:\Users\pc\AppData\Roaming\npm\node_modules\koa/node_modules
[1/24] content-disposition@~0.5.0 installed at node_modules\_content-disposition@0.5.2@content-disposition
[2/24] escape-html@~1.0.1 installed at node_modules\_escape-html@1.0.3@escape-html
[3/24] depd@^1.1.0 installed at node_modules\_depd@1.1.1@depd
[4/24] error-inject@~1.0.0 installed at node_modules\_error-inject@1.0.0@error-inject
[5/24] delegates@^1.0.0 installed at node_modules\_delegates@1.0.0@delegates
[6/24] content-type@^1.0.0 installed at node_modules\_content-type@1.0.4@content-type
[7/24] cookies@~0.7.0 installed at node_modules\_cookies@0.7.1@cookies
[8/24] fresh@^0.5.2 installed at node_modules\_fresh@0.5.2@fresh
[9/24] debug@* installed at node_modules\_debug@3.1.0@debug
[10/24] destroy@^1.0.3 installed at node_modules\_destroy@1.0.4@destroy
[11/24] koa-compose@^4.0.0 installed at node_modules\_koa-compose@4.0.0@koa-compose
[12/24] mime-types@^2.0.7 existed at node_modules\_mime-types@2.1.17@mime-types
[13/24] statuses@^1.2.0 existed at node_modules\_statuses@1.4.0@statuses
[14/24] koa-is-json@^1.0.0 installed at node_modules\_koa-is-json@1.0.0@koa-is-json
[15/24] http-errors@^1.2.8 installed at node_modules\_http-errors@1.6.2@http-errors
[16/24] http-assert@^1.1.0 installed at node_modules\_http-assert@1.3.0@http-assert
[17/24] parseurl@^1.3.0 installed at node_modules\_parseurl@1.3.2@parseurl
[18/24] only@0.0.2 installed at node_modules\_only@0.0.2@only
[19/24] vary@^1.0.0 installed at node_modules\_vary@1.1.2@vary
[20/24] on-finished@^2.1.0 installed at node_modules\_on-finished@2.3.0@on-finished
[21/24] accepts@^1.2.2 installed at node_modules\_accepts@1.3.4@accepts
[22/24] koa-convert@^1.2.0 installed at node_modules\_koa-convert@1.2.0@koa-convert
[23/24] type-is@^1.5.5 installed at node_modules\_type-is@1.6.15@type-is
[24/24] is-generator-function@^1.0.3 installed at node_modules\_is-generator-function@1.0.6@is-generator-function
All packages installed (36 packages installed from npm registry, used 2s, speed 206.78kB/s, json 35(43.75kB), tarball 347.06kB)
根據信息找文件夾 , 能找到



執行程序 node  E:\Koa\ first.js 第一行就報錯

const Koa = require('koa');
const app = new Koa();

app.use(async ctx => {
  ctx.body = 'Hello World';
});

app.listen(3000);


分析
全局安裝的  cnpm i -g koa
我是 先安裝後執行的
已經安裝了 , node 版本 8.9

解決方法
方法1 , 路徑換成絕對路徑

把
const Koa = require('koa');
換成
const Koa = require('C:/Users/pc/AppData/Roaming/npm/node_modules/koa');
或
const Koa = require('C:\\Users\\pc\\AppData\\Roaming\\npm\\node_modules\\koa');

方法2 , 在和代碼同級的目錄下執行 cnpm i koa , 這樣就不是全局安裝了 , 而後不改代碼的狀況下運行代碼

運行不報錯



成功


logo


拓展資料 : 查 "require的入參怎麼填 "






相關文章
相關標籤/搜索