is_done my own data
This commit is contained in:
@@ -6,7 +6,7 @@
|
|||||||
<q-card class="my-card text-white bg-teal-9 text-h6">
|
<q-card class="my-card text-white bg-teal-9 text-h6">
|
||||||
<q-card-section>
|
<q-card-section>
|
||||||
<q-toggle :false-value="false" :label="item.nombre" :true-value="true" color="red"
|
<q-toggle :false-value="false" :label="item.nombre" :true-value="true" color="red"
|
||||||
v-model="item.is_done" />
|
v-model="item.is_done" @click="updateItemDone(item)" />
|
||||||
<q-icon name="edit" class="cursor-pointer q-ml-xs" />
|
<q-icon name="edit" class="cursor-pointer q-ml-xs" />
|
||||||
<q-icon name="delete" class="cursor-pointer float-right q-mt-md text-red" />
|
<q-icon name="delete" class="cursor-pointer float-right q-mt-md text-red" />
|
||||||
<q-item-label caption class="q-ml-md"><span class="blue text-h6">
|
<q-item-label caption class="q-ml-md"><span class="blue text-h6">
|
||||||
@@ -29,20 +29,38 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { onMounted, watch, computed } from 'vue'
|
import { onMounted } from 'vue'
|
||||||
import { useRoute } from 'vue-router'
|
import { useRoute } from 'vue-router'
|
||||||
import { supabaseStore } from '../stores/supabaseStore'
|
import { supabaseStore } from '../stores/supabaseStore'
|
||||||
import useSupabase from '../boot/supabase'
|
import useSupabase from '../boot/supabase'
|
||||||
|
import { useQuasar } from 'quasar'
|
||||||
|
|
||||||
const { supabase } = useSupabase()
|
const { supabase } = useSupabase()
|
||||||
const store = supabaseStore()
|
const store = supabaseStore()
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
|
const $q = useQuasar()
|
||||||
|
|
||||||
watch((computed(() => store.items)), (newItems, oldItems) => {
|
//TODO los items de listas compartidas falta policy update
|
||||||
console.log(newItems, oldItems)
|
const updateItemDone = async (item) => {
|
||||||
|
console.log(item)
|
||||||
}, { deep: true })
|
try {
|
||||||
|
const { data, error } = await supabase
|
||||||
|
.from('items')
|
||||||
|
.update({ is_done: item.is_done })
|
||||||
|
.eq('id', item.id)
|
||||||
|
.select()
|
||||||
|
if (error) throw error
|
||||||
|
store.items = store.items.filter(i => i.id !== item.id)
|
||||||
|
store.items.push(data[0])
|
||||||
|
} catch (error) {
|
||||||
|
if (error instanceof Error) {
|
||||||
|
$q.notify({
|
||||||
|
type: 'negative',
|
||||||
|
message: error.message
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const onLoad = (index, done) => {
|
const onLoad = (index, done) => {
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
@@ -51,7 +69,6 @@ const onLoad = (index, done) => {
|
|||||||
}, 1000)
|
}, 1000)
|
||||||
}
|
}
|
||||||
const getItems = async () => {
|
const getItems = async () => {
|
||||||
console.log('getItems', route.params.id)
|
|
||||||
let { data: items, error } = await supabase
|
let { data: items, error } = await supabase
|
||||||
.from('items')
|
.from('items')
|
||||||
.select('*')
|
.select('*')
|
||||||
|
|||||||
Reference in New Issue
Block a user