при изменении также срабатывала? вот мой код let data = reactive({});
async function getPolls(){
data = await axios
.get('/api/polls')
.catch(error => {
console.log(error)
})
}
const titles = computed(()=>{
if (data.data){
return data.data.map(element=>{
let result = {}
let parsed = JSON.parse(element.content)
result['id'] = element.id
result['user_id'] = element.user_id
result['title'] = parsed.find(item =>{
if (item.details.type ==="title"){
return item
}
})
result['text'] = parsed.find(item=>{
if (item.details.type ==="text"){
return item
}
})
result['photo'] = parsed.find(item=>{
if (item.details.type ==="photo"){
return item
}
})
return result
})
}
})
watch(()=>store.getters.currentPoll,(curr,prev)=>{
if (curr){
data.data.push({...curr})
console.log(titles.value)
store.dispatch('setCurrentPoll',null)
}
})
у меня в переменной добавляется новый массив, но computed не меняется
Тебе нужно из вотч вызывать изменение компьютед
ну во первых лучше не обращается к геттеру на прямую это плохой код лучше используйте mapGetters
Понял принял. А что во вторых?)
когда именно вызывается запрой на бэкенд?
переписываете этот код в отдельный метод и вызываете в mounted
Обсуждают сегодня