diff --git a/src/common/interfaces/componentsProps.ts b/src/common/interfaces/componentsProps.ts
index da8caafb439eff2de59e59275b76b7f28fa23c37..535181da43e0f56cd359555ca45d71ef7430a299 100644
--- a/src/common/interfaces/componentsProps.ts
+++ b/src/common/interfaces/componentsProps.ts
@@ -45,7 +45,7 @@ export interface ITableProps {
   };
   handlers?: {
     cell: [number, number];
-    handler?: unknown;
+    handler?: () => void;
   }[];
 }
 
diff --git a/src/components/Knob/Knob.vue b/src/components/Knob/Knob.vue
index c1fb4ef7d01f1b7e25c0932628f2d0631534f076..e6da388d1644d1e2d20d62c2b11b0aab7514bba0 100644
--- a/src/components/Knob/Knob.vue
+++ b/src/components/Knob/Knob.vue
@@ -31,7 +31,7 @@ if (props.value) {
   value.value = props.value;
 }
 const propValue = computed(() => props.value);
-watch(propValue, () => (value.value = propValue.value));
+watch(propValue, () => (value.value = propValue.value ?? value.value));
 watch(value, () => emit('update', value));
 
 const isClickHold = ref<boolean>(false);
diff --git a/src/components/Rating/Rating.vue b/src/components/Rating/Rating.vue
index db8d86021ce51f7902998ffb2687bf6001314806..57017ce2c7cb846e5cd002f4881f6f2b40b8d163 100644
--- a/src/components/Rating/Rating.vue
+++ b/src/components/Rating/Rating.vue
@@ -22,7 +22,7 @@ if (props.value) {
   value.value = props.value;
 }
 const propValue = computed(() => props.value);
-watch(propValue, () => (value.value = propValue.value));
+watch(propValue, () => (value.value = propValue.value ?? value.value));
 watch(value, () => emit('update', value));
 
 const onHoverIndex = ref();
diff --git a/src/components/Table/Table.vue b/src/components/Table/Table.vue
index 98be4be0080dd631a7fd2ba9daee39157a01596f..317cb3a4272b0d527749b8b5b2d87c299f9f29a5 100644
--- a/src/components/Table/Table.vue
+++ b/src/components/Table/Table.vue
@@ -160,7 +160,7 @@ const updateData = (newValue: Ref<unknown>, rowIndex: number, columnIndex: numbe
           v-for="(item, columnIndex) of row"
           :key="columnIndex"
           @click="
-            handlers ? handlers?.find((i) => i.cell?.[0] === rowIndex && i.cell?.[1] === columnIndex)?.handler() : null
+            handlers ? handlers.find((i) => i.cell?.[0] === rowIndex && i.cell?.[1] === columnIndex)?.handler?.() : null
           "
           :class="{
             leftBorder: showAllLines,