網站搜尋
我有一個簡單的 Koa 應用程式。我也使用 mongoose 和 mongodb(Mlab)
我已經連接到 MongoDB。我只能找到 ourCat。我在控制台看到陣列。但我不知道如何在頁面上獲取並顯示結果。以及我如何在某個中間件中使用對資料庫的請求?
const Koa = require('koa'); const app = new Koa(); const mongoose = require('mongoose'); const mongoUri = '...'; mongoose.Promise = Promise; function connectDB(url) { if (!url) { throw Er 閱讀更多 →
我使用 Koa 與 Node.js 8.1。
今天我發現,在我的 app.js 中,如果我以這個順序編寫:
const Koa = require('koa') var cors = require('koa-cors') const app = new Koa() app.use(cors(options)) app.use(router.routes())CORS 可以工作。我可以透過在 Postman 發送 origin 標頭來驗證結果,然後獲取
存取控制允許來源
作為回
閱讀更多 →我如何覆寫 koa-body 的型別定義?koa-body 有如下的型別定義:
declare module "koa" { interface Request { body: any; } interface Context { body: any; } }我想要覆寫成類似這樣的東西(檔案 index.d.ts):
import { Files } from 'formidable' interface IBody { files: Files } declare module "koa" { interface Request { body: IBody } interface Context { body: IBody } }但是智能感知不工作,它仍然顯示 c
閱讀更多 →我正在使用 Typescript 與 Koa。有人可以告訴我如何自動生成 API 文件(不是手動的)嗎?我看到有一個套件 tsoa (https://www.npmjs.com/package/tsoa),但我只想為我的 routes 擁有簡單的 API 文件,所以我不想建立 controllers。
閱讀更多 →
我正在使用 TypeScript 以及 Koa 2 撰寫一個應用程式。
然而,我遇到的問題是,我的全域 Koa 錯誤處理程式無法捕捉在我的應用程式中拋出的錯誤。
舉例來說,以下中介軟體(這是載入任何路由之前的第一個中介軟體):
app.use(async(ctx, next) => { console.log("ErrorHandler loaded..."); try { console.log("Trying for error...&quo 閱讀更多 →我有一個使用 Koa.JS 開發的網頁應用程式。我想將它部署到 Azure Cloud Function 和 AWS Lambda。這樣我就不需要維護伺服器相關的東西,而且也不會被綁定在特定的雲端供應商上。
有任何框架可以支持這種需求嗎?
這是我得到的網頁應用程式。
索引.ts
const Koa = require('koa'); const app = new Koa(); app.use(async ctx => { ctx.body = 'Hello World'; }); app.listen(3000);有任何框架可以支持這種需求嗎?
Express(較舊的 Koa)有更廣泛的支持
我決定根據用途來分開我的路由器,所以它們看起來像這樣:
路由器/homeRouter.ts
import * as Router from 'koa-router'; const router: Router = new Router(); router .get('/', async (ctx, next) => { ctx.body = 'hello world'; }); export = router;路由器/userRouter.ts
閱讀更多 →
我在 Typescript 中是新手,正在嘗試整合 koa-router 和 koa-passport。已安裝所有 @types\
import Koa from "koa"; import Route from "koa-router"; import passport from "koa-passport"; import session from "koa-session"; const app = new Koa(); const router = new Route(); app.keys = [process.env.SEC 閱讀更多 →
部分解決:
在 GitHub 上有一個老問題,這個問題有被稍微描述過。當你在全域範圍內宣告一個模組時,它會重寫整個導出的模組類型。當你在模組內宣告一個模組時,它會合併。為什麼?我不知道
https://github.com/microsoft/TypeScript/issues/17736#issuecomment-344353174
我想通過介面合併來擴展第三方模組的類型。一切正常,但當我在 type
閱讀更多 →我正在使用以下介面來定義我的 koa 的上下文與狀態:
export interface AppState extends Koa.DefaultState { //... } export interface AppContext extends Koa.DefaultContext { models: DomainModels; connection: Connection; }然後這樣實例化 Koa:
const app = new Koa<AppState, AppContext>(); app.use(session(sessionConfig, app));問題是 koa-session 的類型使用了聲明合併,並導致以下錯誤:
Argument of type 'import("/Users/chance/Projects/pear/packages/api/node_modules/ 閱讀更多 →