![](/img/trans.png)
[英]How to change property of item in ImmutableList({}) inside Immutable.Map({})
[英]Typescript “Immutable.Map<K, T> as Object”
我正在重構一些TypeScript,並且遇到了使我卡住的東西。
在下面的代碼中,“ as”關鍵字如何將Map<number, Trip>
轉換為“ Trip”對象? 如果不是,那它在做什么?
public mergeBookings(bookingData: Immutable.Map<number, Booking>) {
// merge bookings
const bookings: Immutable.Map<number, Booking> = this.mergeBookingData(bookingData);
// sort bookings
const sortedBookings: Immutable.Map<number, Booking> = SortingService.sortBookings(bookings);
// add bookings to trip
const trip: Map<number, Trip> = this.setBookingData(sortedBookings);
return trip as Trip;
}
對該關鍵字進行說明,它對地圖和其他對象的工作方式以及有關它的一些文檔會很好,但是任何信息都將有助於維護此代碼庫。
特別是,我想更新函數定義以包括返回類型,但需要確信它確實是“ Trip”對象。 所需的函數定義示例如下:
public mergeBookings(bookingData: Immutable.Map<number, Booking>): Trip {...}
我到處都是關於TypeScript的StackOverflow答案,關於文檔的長時間Google會話並沒有任何幫助。 根據標簽,此代碼正在使用:
打字稿
角
Immutable.js
as
演員一樣。 它不做任何轉換。 它不會以任何方式改變trip
。 唯一的目的是讓打字稿編譯器信任程序員,而不產生錯誤消息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.