填寫這份《一分鐘調查》,幫我們(開發組)做得更好!去填寫Home

TransferState

從伺服器端的應用程式傳到客戶端的應用程式的鍵值儲存。

A key value store that is transferred from the application on the server side to the application on the client side.

檢視"說明"...

      
      class TransferState {
  get<T>(key: StateKey<T>, defaultValue: T): T
  set<T>(key: StateKey<T>, value: T): void
  remove<T>(key: StateKey<T>): void
  hasKey<T>(key: StateKey<T>)
  onSerialize<T>(key: StateKey<T>, callback: () => T): void
  toJson(): string
}
    

Provided in

說明

TransferState 將作為可注入令牌提供。要使用它,請在伺服器上匯入 ServerTransferStateModule,並在客戶端上匯入 BrowserTransferStateModule

TransferState will be available as an injectable token. To use it import ServerTransferStateModule on the server and BrowserTransferStateModule on the client.

這裡會使用 JSON.stringify/JSON.parse 對儲存中的值進行序列化/反序列化。因此,僅布林、數字、字串、null 和非類別物件能以無損的方式進行序列化和反序列化。

The values in the store are serialized/deserialized using JSON.stringify/JSON.parse. So only boolean, number, string, null and non-class objects will be serialized and deserialized in a non-lossy manner.

方法

獲取與鍵名對應的值。如果找不到鍵名,則返回 defaultValue

Get the value corresponding to a key. Return defaultValue if key is not found.

      
      get<T>(key: StateKey<T>, defaultValue: T): T
    
引數
key StateKey
defaultValue T
返回值

T

設定與鍵名對應的值。

Set the value corresponding to a key.

      
      set<T>(key: StateKey<T>, value: T): void
    
引數
key StateKey
value T
返回值

void

從商店中取出鍵名。

Remove a key from the store.

      
      remove<T>(key: StateKey<T>): void
    
引數
key StateKey
返回值

void

測試儲存中是否存在鍵名。

Test whether a key exists in the store.

      
      hasKey<T>(key: StateKey<T>)
    
引數
key StateKey

註冊一個回呼(Callback),以在呼叫 toJson 時為指定的鍵名提供一個值。

Register a callback to provide the value for a key when toJson is called.

      
      onSerialize<T>(key: StateKey<T>, callback: () => T): void
    
引數
key StateKey
callback () => T
返回值

void

將儲存的當前狀態序列化為 JSON。

Serialize the current state of the store to JSON.

      
      toJson(): string
    
引數

沒有引數。

返回值

string