diff --git a/packages/signals/src/write.rs b/packages/signals/src/write.rs index 46d4dda4a..919e0fe6e 100644 --- a/packages/signals/src/write.rs +++ b/packages/signals/src/write.rs @@ -102,7 +102,8 @@ pub trait Writable: Readable { where Self::Target: std::ops::Not + Clone, { - self.set(!self.cloned()); + let inverted = !(*self.peek()).clone(); + self.set(inverted); } /// Index into the inner value and return a reference to the result.