W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
generate<T, S>(initialStateOrOptions: S | GenerateOptions
<T, S>, condition?: ConditionFunc
<S>, iterate?: IterateFunc<S>, resultSelectorOrObservable?:SchedulerLike
| ResultFunc<S, T>, scheduler?: SchedulerLike
): Observable
<T>
initialStateOrOptions | 類型:S GenerateOptions |
---|---|
condition | 可選的。默認(rèn)值為undefined 。類型:ConditionFunc |
iterate | 可選的。默認(rèn)值為undefined 。類型:IterateFunc |
resultSelectorOrObservable | 可選的。默認(rèn)值為undefined 。類型:SchedulerLike | ResultFunc |
scheduler | 可選的。默認(rèn)值為undefined 。類型:SchedulerLike 。 |
Observable<T>
generate(initialState: S, condition: ConditionFunc<S>, iterate: IterateFunc<S>, resultSelector: ResultFunc<S, T>, scheduler?: SchedulerLike): Observable<T> 通過使用指定的調(diào)度程序發(fā)送觀察者消息,通過運(yùn)行產(chǎn)生該序列元素的狀態(tài)驅(qū)動循環(huán)來生成可觀察序列。參量initialState初始狀態(tài)。健康)狀況終止生成的條件(返回false時)。重復(fù)迭代步驟功能。resultSelector選擇器功能,用于按順序產(chǎn)生的結(jié)果。(已棄用)調(diào)度器可選的。默認(rèn)值為undefined 。一個SchedulerLike 在其上運(yùn)行的發(fā)電機(jī)循環(huán)。如果未提供,則默認(rèn)為立即發(fā)出。returnsObservable<T> :生成的序列。 |
---|
generate(initialState: S, condition: ConditionFunc<S>, iterate: IterateFunc<S>, scheduler?: SchedulerLike): Observable<S> 通過運(yùn)行一個狀態(tài)驅(qū)動的循環(huán)來生成一個 Observable,該循環(huán)在每次迭代時都發(fā)出一個元素。參量 initialState 初始狀態(tài)。健康)狀況終止生成的條件(返回false時)。重復(fù)迭代步驟功能。調(diào)度器可選的。默認(rèn)值為undefined 。一個Scheduler 在其上運(yùn)行的發(fā)電機(jī)循環(huán)。如果未提供,則默認(rèn)為立即發(fā)射。returnsObservable<S> :生成的序列。用它代替 for 循環(huán)中的下一個值。generate 允許您創(chuàng)建使用循環(huán)生成的值流,該值流與傳統(tǒng)的 for 循環(huán)非常相似。的第一個參數(shù) generate 是一個初始值。第二個參數(shù)是一個接受該值并測試是否仍然存在某些條件的函數(shù)。如果是這樣,則循環(huán)繼續(xù),否則,循環(huán)停止。第三個值是一個函數(shù),它采用先前定義的值,并在每次迭代時以某種方式對其進(jìn)行修改。請注意,這三個參數(shù)如何與正則 for 循環(huán)中三個表達(dá)式的直接等效項:第一個表達(dá)式初始化某個狀態(tài)(例如,數(shù)字索引),第二個測試循環(huán)是否可以進(jìn)行下一次迭代(例如,如果索引小于10),第三個狀態(tài)如何測試定義的值將在每一步上修改(索引將增加一)。generate 運(yùn)算符的返回值是一個 Observable,它在每次循環(huán)迭代時都會發(fā)出一個值。首先,條件函數(shù)被運(yùn)行。如果返回 true,則 Observable 發(fā)出當(dāng)前存儲的值(第一次迭代時的初始值),然后使用迭代函數(shù)更新該值。如果在某些情況下條件返回 false,則 Observable 在此時完成。您可以選擇將第四個參數(shù)傳遞給generate -結(jié)果選擇器函數(shù),該函數(shù)使您可以立即映射通常由 Observable 發(fā)出的值。如果在 generate 調(diào) 用中發(fā)現(xiàn)三個匿名函數(shù)難以讀取,則可以向操作員提供單個對象。該對象具有的屬性:initialState , condition ,iterate 和 resultSelector ,應(yīng)具有相應(yīng)值,你通常會傳遞給 generate 。resultSelector 仍然是可選的,但是這種調(diào)用形式 generate 也可以省略 condition 。如果省略它,則意味著條件始終成立,因此 Observable 輸出將永遠(yuǎn)不會完成。兩種形式都 generate 可以選擇接受調(diào)度程序。在多參數(shù)調(diào)用的情況下,調(diào)度程序只是作為最后一個參數(shù)出現(xiàn)(無論是否存在 resultSelector 函數(shù))。如果是單參數(shù)調(diào)用,則可以將其作為 scheduler 傳遞給操作員的對象的屬性來提供 。在這兩種情況下,調(diào)度程序都會決定何時進(jìn)行循環(huán)的下一次迭代,從而確定 Observable 何時發(fā)出下一個值。例如,要確保在事件循環(huán)中將每個值推送到單獨任務(wù)上的觀察者,可以使用 async 調(diào)度程序。請注意,默認(rèn)情況下(未傳遞調(diào)度程序時)將簡單地同步發(fā)出值。 |
generate(options: GenerateBaseOptions<S>): Observable<S> 通過使用指定的調(diào)度程序發(fā)送觀察者消息,通過運(yùn)行產(chǎn)生該序列元素的狀態(tài)驅(qū)動循環(huán)來生成可觀察序列。重載接受可能包含初始狀態(tài),迭代,條件和調(diào)度程序的選項對象。參量選項必須包含initialState的對象,必須進(jìn)行迭代,并且可能包含條件和調(diào)度程序。退貨Observable<S> :生成的序列。 |
generate(options: GenerateOptions<T, S>): Observable<T> 通過使用指定的調(diào)度程序發(fā)送觀察者消息,通過運(yùn)行產(chǎn)生該序列元素的狀態(tài)驅(qū)動循環(huán)來生成可觀察序列。重載接受可能包含初始狀態(tài),迭代,條件,結(jié)果選擇器和調(diào)度程序的選項對象。參量選項必須包含initialState,iterate,resultSelector且可能包含條件和調(diào)度程序的對象。退貨Observable<T> :生成的序列。 |
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: