@@ -11,17 +11,30 @@ export default function Todos({ user }) {
11
11
12
12
useEffect ( ( ) => {
13
13
fetchTodos ( )
14
+
14
15
subscription1 = supabase
15
- . from ( 'todos' )
16
- . on ( 'UPDATE' , ( v ) => console . log ( 'UPDATE on todos' , v ) )
17
- . on ( 'INSERT' , ( v ) => console . log ( 'INSERT on todos' , v ) )
16
+ . channel ( 'todos-table-channel' )
17
+ . on ( 'realtime' , { event : 'UPDATE' , schema : 'public' , table : 'todos' } , ( v ) =>
18
+ console . log ( 'UPDATE on todos' , v )
19
+ )
20
+ . on ( 'realtime' , { event : 'INSERT' , schema : 'public' , table : 'todos' } , ( v ) =>
21
+ console . log ( 'INSERT on todos' , v )
22
+ )
18
23
. subscribe ( ( change ) => console . log ( 'todos changed' , change ) )
19
24
20
25
subscription2 = supabase
21
- . from ( '*' )
22
- . on ( 'UPDATE' , ( v ) => console . log ( 'UPDATE on schema' , v ) )
23
- . on ( 'INSERT' , ( v ) => console . log ( 'INSERT on schema' , v ) )
26
+ . channel ( 'public-schema-channel' )
27
+ . on ( 'realtime' , { event : 'UPDATE' , schema : 'public' } , ( v ) =>
28
+ console . log ( 'UPDATE on schema' , v )
29
+ )
30
+ . on ( 'realtime' , { event : 'INSERT' , schema : 'public' } , ( v ) =>
31
+ console . log ( 'INSERT on schema' , v )
32
+ )
24
33
. subscribe ( ( change ) => console . log ( 'schema changed' , change ) )
34
+
35
+ return ( ) => {
36
+ supabase . removeAllChannels ( )
37
+ }
25
38
} , [ ] )
26
39
27
40
const fetchTodos = async ( ) => {
@@ -34,7 +47,7 @@ export default function Todos({ user }) {
34
47
}
35
48
const addTodo = async ( taskText ) => {
36
49
try {
37
- supabase . removeSubscription ( subscription2 )
50
+ supabase . removeChannel ( subscription2 )
38
51
39
52
let task = taskText . trim ( )
40
53
if ( task . length ) {
0 commit comments