tengo un proyecto vue js con front-end y tengo un campo con variables que lo quiero cuando se cambia, irá al backend y cambiará allí también, ¿alguna idea? la variable es tage de identificación como en este código
app.get('/payments', (request, response) => { response.set('Access-Control-Allow-Origin','*') let payments = [] db.collection("payments").where("id", "==", idtag).get().then(snapshot => { snapshot.forEach((doc) => { console.log(doc.id, '=>', doc.data()) payments.push(doc.data()) }) response.send(payments) console.log('payments:',payments) }) })y este es el frente
export default defineComponent({ setup () { const loadinga = ref(false) const idtag=ref(null) const filter = ref('') return { events: [ '2019/02/01', '2019/02/05', '2019/02/06' ], date : ref('2019-02-22 21:02'), columns, loadinga, idtag,Haz que el ID forme parte de la URL de la solicitud:
// backend assuming this is express app.get('/payments/:id', (request, response) => { // use the id in some way const idtag = req.params.id; ... });En su código de interfaz, debe ver la etiqueta de identificación e iniciar una nueva solicitud cada vez que cambie.
// frontend import { defineComponent, ref, watch } from "vue"; export default defineComponent({ setup() { const idtag = ref(null); watch(idtag, (newValue, oldValue) => { fetch(`/payments/${newValue}`) .then(raw => raw.json()) .then(data => { // do something with the data console.log(data) }) .catch(console.warn); }); return { idtag }; } })Si necesita que esto se ejecute de inmediato, debe usar watchEffect en su lugar. Pero dado que su valor es nulo al principio, no creo que este sea el caso.