Utils

Packhouse Utils

Utils是Packhouse內部的函數組,有許多功能都來自於Utils的建構,包括Tool IDMold Verify等。

所有的Utils是指向同一個對象,意味著你可以藉由Utils物件進行拓展,但我們不建議這麼做,良好的拓展方法請參照Plugins

How To Use

Core

const Packhouse = require('packhouse')
const packhouse = new Packhouse()

packhosue.utils === Packhouse.utils // true

Tool

const tool = {
    myTool: {
        install({ store, utils }) {
            store.id = utils.generateId()
            store.uuid = utils.generateId
        },
        handler(self) {
            console.log(self.store.id)
            console.log(self.store.uuid())
        }
    }
}

Mold

Methods

getType

能比typeof獲取更多的型態,沒在下列名單內的揭回傳typeof的型態:

verify

一個簡單的驗證方法,並回傳新的物件。

verifymold是分離的系統,無法使用mold表達示。

verify驗證的type對象是多個型態,而支援的類型請參閱getType

generateId

仿uuid建立,回傳一個隨機uuid,但這並不是標準的uuid演算法。

但這不代表你無法使用uuid演算法:

peel

針對物件深度取值,可以參考可選鍊

loader

返回一個Promise,第一次執行後會執行程序,但後續的呼叫皆回傳第一次呼叫的結果。

loader的存在目的很簡單,在Tool Install的週期時,有時會存在需非同步請求才能獲得的資料,但該週期又不支援非同步運算,因此你可以藉由loader進行包裹來達成初步的Cache。

更進階的快取應用可以參照Order

Last updated

Was this helpful?