Wix—операция (setFilter) не разрешена для набора данных, доступного только для записи

#velo

#velo

Вопрос:

Я пытаюсь следовать этому руководству здесь: https://www.youtube.com/watch?v=Hx7_8-lRsW0

Но я выхожу из ошибки:

Operation (setFilter) not allowed on write-only dataset

Кто-нибудь может объяснить, как работают наборы данных и как я могу выполнить .setFilter() ?

Мой код:

 import wixData from "wix-data";

$w.onReady(function () {
    wixData.query('collectionName');
});

let debounceTimer;
export function iTitle_keyPress(event, $w) {
    console.log('hello');
    if(debounceTimer) {
        clearTimeout(debounceTimer);
        debounceTimer = undefined;
    }
    debounceTimer = setTimeout(() => {
        filter($w('#iTitle').value);
    }, 200);
}

let lastFilterTitle;
function filter(title) {
    console.log(title);
    if(lastFilterTitle !== title) {
        $w('#dataset1').setFilter(wixData.filter().contains('name',title));
        lastFilterTitle = title;
    }
}
  

Ответ №1:

Вам необходимо изменить режим вашего набора данных на панели настроек набора данных. Набор данных, доступный только для записи, используется для таких вещей, как форма пользовательского ввода. Здесь, поскольку вы используете свой набор данных для отображения данных, вам нужен набор данных, доступный только для чтения.