effector/no-guard
Any guard call could be replaced with sample call.
ts
// 👎 could be replaced
guard({ clock: trigger, source: $data, filter: Boolean, target: reaction });
// 👍 makes sense
sample({ clock: trigger, source: $data, filter: Boolean, target: reaction });Nice bonus: sample is extendable. You can add transformation by fn.
ts
// 👎 could be replaced
guard({
clock: trigger,
source: $data.map((data) => data.length),
filter: Boolean,
target: reaction,
});
// 👍 makes sense
sample({
clock: trigger,
source: $data,
filter: Boolean,
fn: (data) => data.length,
target: reaction,
});