日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

快来玩玩便捷、高效的Demo练习场

發布時間:2025/6/17 编程问答 20 如意码农
生活随笔 收集整理的這篇文章主要介紹了 快来玩玩便捷、高效的Demo练习场 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Demo練習場

Vonajs 提供了一個 Demo 練習場的功能,允許我們非常方便、快捷的對代碼做測試,對想法做驗證

步驟

簡而言之,Demo練習場的使用只需兩步:第一步寫代碼,第二步執行終端命令。具體說明如下:

1. 新建demo文件

我們需要在項目中新建源碼文件:src/backend/demo/index.ts。當前,我們并不需要手工創建此文件,而是執行以下命令,自動創建該文件:

$ npm run demo

2. 編寫測試代碼

在文件demo/index.ts中,我們寫入測試代碼:

export async function main(app: VonaApplication, _argv: IArgv) {
+ console.log('server listen: ', app.config.server.listen);
}

3. 執行demo文件

由于demo文件已經存在,再次執行同樣的終端命令,就會自動加載此demo文件,并運行

$ npm run demo

更多例子

1. 模擬請求的上下文環境ctx

export async function main(app: VonaApplication, _argv: IArgv) {
+ await app.bean.executor.mockCtx(async () => {
+ // do something in ctx
+ });
}
  • app.bean: 全局ioc容器
  • app.bean.executor: 從ioc容器獲取全局bean實例executor。executor提供一組工具方法,其中,mockCtx用于創建一個模擬的上下文環境ctx

2. 訪問Api

比如我們訪問首頁 Api:

export async function main(app: VonaApplication, _argv: IArgv) {
await app.bean.executor.mockCtx(async () => {
+ const homeBody = await app.bean.executor.performAction('get', '//');
+ console.log(homeBody); // Hello Vona!
});
}
  • performAction用于直接訪問Api,method參數和path參數都支持類型提示

我們也可以模擬中文的 ctx,然后訪問首頁 Api:

export async function main(app: VonaApplication, _argv: IArgv) {
await app.bean.executor.mockCtx(async () => {
+ const homeBody = await app.bean.executor.performAction('get', '//');
+ console.log(homeBody); // 您好, Vona!
+ }, { locale: 'zh-cn' });
}

3. 模擬登錄和退出登錄

我們也可以模擬登錄,然后執行業務邏輯,最后再退出登錄

export async function main(app: VonaApplication, _argv: IArgv) {
await app.bean.executor.mockCtx(async () => {
+ // signin as user: admin
+ await app.bean.passport.signinMock();
+ // do something
+ // signout
+ await app.bean.passport.signout();
});
}

結語

Vonajs已開源:https://github.com/vonajs/vona

Vonajs作者正在B站直播撰寫技術文檔,工作日每晚8:30,歡迎圍觀:濮水代碼

開發一個功能完備的Nodejs框架固然費時費力,但是撰寫技術文檔更加費盡心思。寫文檔的過程同時也是再次梳理思路的過程,即便是圍觀,也有利于加深對框架設計的理解,探索不一樣的架構設計路徑。目前已完成部分文檔,更多精彩正在逐步展開,歡迎參與

總結

以上是生活随笔為你收集整理的快来玩玩便捷、高效的Demo练习场的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。