[英]Performing side effects on NGXS Forms UpdateFormValue
我的應用程序使用NGXS表單插件,並且我想在表單中的值更改時觸發某些API調用。
執行以下操作是否正確? 如果沒有,推薦的方法是什么?
@Action(UpdateFormValue)
public doStuff(ctx: StateContext<any>, { payload }: UpdateFormValue) {
// logic
}
這似乎可行,但是后來我看不到Redux開發人員工具中的更新表單值操作,這使我想知道自己是否做對了。
是的,您的方向正確!
在valueChanges
流發出任何事件之后, UpdateFormValue
在幕后調度UpdateFormValue
,基本上,沒有什么超自然的:D
我唯一的評論是,當您調度新的UpdateFormValue
操作時,您想取消以前未完成的異步作業,因此必須使用cancelUncompleted
選項:
@Action(UpdateFormValue, { cancelUncompleted: true })
public doStuff(ctx, action) {}
此外, UpdateFormValue
行動不會立即被派遣valueChanges
流通過管道debounceTime
。 如果你不希望這個流通過管道輸送不debounceTime
你必須提供ngxsFormDebounce
結合,應該是小於0
,是這樣的:
<form ngxsForm="blah-blah" [ngxsFormDebounce]="-1">
或者你可以明確設置updateOn
您的選項FormGroup
到blur
或submit
,然后debounceTime
也將被忽略。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.