Как обновить мой список элементов в winapp, когда я вставляю новые данные в sqlite (javascript & html)
Я вставляю новые данные в sqlite (с помощью clickclick), а затем, как обновить мой список элементов, чтобы я мог видеть новые данные без перезапуска приложения. Я использую Javascript и HTML, чтобы сделать Win8App.
Я не использовал привязку данных в приложении.
// Because we're doing the rendering, we need to put the data into the item.
// We can't use databinding.
result.getElementsByClassName("item-image")[0].src =currentItem.data.backgroundImage;
result.getElementsByClassName("item-note-day")[0].textContent = currentItem.data.noteDay;
result.getElementsByClassName("item-iconClassImage")[0].src = currentItem.data.iconImage;
result.getElementsByClassName("item-noteTitle")[0].textContent = currentItem.data.noteTitle;
result.getElementsByClassName("item-noteExcerpt")[0].textContent = currentItem.data.noteContent;
return result;
Что я хочу, так это когда я нажимаю кнопку, я вставляю свои данные в sqlite и обновляю список, чтобы я мог видеть все мои данные, включая новые. И мне удалось вставить мои данные в sqlite.
Извините, я китаец, это мой первый вопрос на английском языке. Я не нет, я ясно или нет? Если кто-нибудь может мне помочь, спасибо.
1 ответ
С этим компонентом SQLite есть два подхода. Во-первых, простой:
- используйте itemDataSource, предоставленный компонентом ( см. пример модульных тестов)
- вызовите invalidateAll на нем, когда данные изменяются. Либо от прослушивателя, зарегистрированного для событий вставки в базе данных, либо от событий конкретного приложения, которые его запускают
Проблема здесь, конечно, в том, что он всегда перезагрузит весь список. Если вы хотите иметь динамический список, который не попадает в базу данных при каждом обновлении, второй подход заключается в реализации собственного интерфейса IListDataSource, который может стать намного более сложным. Я сделал это для нашего приложения, и в настоящее время я работаю над абстрактной и многократно используемой версией этого для моего любимого проекта, но, к сожалению, я не могу дать никакого графика, когда это будет готово к выпуску...