Val Town: Github Gist 增強(qiáng)版,編寫、運(yùn)行、部署和分享你的代碼

Val Town 是一個(gè)社交編程環(huán)境,用于編寫、運(yùn)行、部署和分享代碼??梢园阉斫獬伞翱蛇\(yùn)行的 Github Gist”。
我們可以在網(wǎng)站上編寫 JavaScript/TypeScript 代碼,并在 Val Town 的服務(wù)器上運(yùn)行它。在瀏覽器中就能實(shí)現(xiàn)創(chuàng)建 API、調(diào)度函數(shù)、發(fā)送電子郵件以及持久化小數(shù)據(jù)片段,所有這些都可以即時(shí)部署。
官網(wǎng)地址:https://www.val.town/
開始使用
首先注冊一個(gè)賬號
然后,學(xué)習(xí)在 Val Town 上的一些基礎(chǔ)用法
注冊賬號
可以使用 Github 授權(quán)登錄,之后起一個(gè)用戶名。
之后點(diǎn)擊“基礎(chǔ)學(xué)習(xí)(Learn the basics )”鏈接,接下里我們來學(xué)習(xí)如何在 Val Town 里的一些基礎(chǔ)知識。
基礎(chǔ)知識
在 Val Town 的世界觀中,我們寫的任何一段代碼都是 Val。
??發(fā)布一個(gè) API
點(diǎn)擊“Run”按鈕執(zhí)行這個(gè) val
點(diǎn)擊“鎖”圖標(biāo)切換至發(fā)布

3. 此時(shí)我們的代碼就部署好了,地址: https://api.val.town/v1/run/zhangbao.myApi?args=["zhangbao"],就這么簡單!

?? 引用 val
寫代碼時(shí),你可以通過 @username
的方式引入站點(diǎn)用戶的公開 API。比如下面這樣:
@rodrigotello.myName 對應(yīng)的代碼是:let myName = "Rodrigo";
,因此上述代碼的運(yùn)行結(jié)果是“Hello, Rodrigo”。

?? 給自己發(fā) Email
使用 console.email
給自己發(fā)郵件,等待大約 10 秒鐘。
執(zhí)行代碼:

看下接收到的郵件:

? 調(diào)度函數(shù)
調(diào)度函數(shù)就是每隔一段時(shí)間就執(zhí)行的一段代碼塊。
執(zhí)行函數(shù)類型 val
按下調(diào)度按鈕(鐘表圖標(biāo)),默認(rèn)調(diào)度周期是1小時(shí)1次
我們給他改成1天1次

?? 引入 npm 包
對,還可以引入 npm 包!我們以引入 lodash 為例,講解下使用方式。
執(zhí)行代碼:

總結(jié)
val town 類似一個(gè) Github Gist 代碼托管平臺(tái),不過還額外提供了類似 serverless 的運(yùn)行服務(wù),滿足你編寫 JavaScript 后及時(shí)部署的需求。免費(fèi)版本的目前使用限制是:每次 run 最多只能發(fā)送 10 個(gè) HTTP 請求,有 10 mb 存儲(chǔ)。個(gè)人基本是足夠使用的了。
相關(guān)鏈接
文檔:https://docs.val.town/
討論:https://discord.com/invite/dHv45uN5RY