Mothersprogrammer
@Mothersprogrammer

Как получить данные из функции(composition API)?

Решил попробовать новый composition API, есть 2 функции и обе в разных файлах, одна из них для отдельного компонента(функция 1), другая, можно так сказать, глобальная(функция 2). Из компонента в функцию 1 передается строка из инпут:
<input type="text" v-model="text"  class="input" id="input-text">
, далее в функции 1 разбивается на массив
export function toCode(){
    let text = ref("");
    let array = ref([]);
    let obj = reactive(scanArrays())

    watch(text, () => {
        array = text.value.split("");
        obj = scanArrays(array, deciphering, cipher)
        console.log(obj)//тут выводится все как надо
    })
    return{
        text, 
        ...obj
        
    }
}
и передается в функцию 2:
export function scanArrays(arr, decip, cip){
    let err = ref({show:false, element:""});
    let result = ref("");
    const func = () => {
        result.value = "";
        err.value.show = false 
        arr.forEach(el => {
            if(!decip.includes(el)){
                err.value.show = true 
                err.value.element = `" ${el} "`;
                return
            }
            let letterInd = decip.indexOf(el);
            result.value += cip[letterInd] + " ";
        });
    }
    if(arr) func()
    return{
        func,
        result,
        err
    }
}
, но в компонент приходит не измененный объект
setup(){

    return{
        ...toCode(), 
    }
  }
, хотя в функции 1 в консоль выводится именно то, чего я жду в результате. Подскажите пожалуйста, что тут не так.
  • Вопрос задан
  • 81 просмотр
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы