Вы должны загрузить данные, используя ленивую загрузку.
Для этого вам сначала нужно получить общую длину записей в файле json и установить [length]="totalLength"
. Тогда mat-paginator автоматически установит для вас страницы на основе totalLength. Затем вы должны загрузить первые 10 данных, то есть от 0 до 10, и назначить их в колледжи $. Я сказал 10, потому что это [pageSize]
. Если ваш размер страницы был 5, загрузите первые 5 данных и так далее. Затем, когда пользователь нажимает на номер страницы, например 2, вы должны позвонить вам api, и он должен вернуть следующий набор данных, то есть с 11 по 20, и назначить его для колледжей $. Данные будут автоматически обновляться в представлении.
Лучше создать API, который будет извлекать данные для вас, когда вы передадите 2 параметра - смещение и ограничение, которое является размером страницы в вашем случае. Существуют различные методы (функции) в paginator, которые запускаются при изменении pageSize или нажатии пользователем на номер страницы
.Ответ на мой собственный вопрос здесь! - это следует за комментариями к тому из других предпринятых ответов, где я сказал:
Я в настоящее время изучаю FLWOR Xquery конструкции в запросе.
col.query('for $item in * return <Item> {$item} </item>')
почти там, но помещает вокруг каждого узла, а не вокруг всех узлов
Я был почти там с синтаксисом, маленькая тонкая настройка дала мне, в чем я нуждался;
doc.col.query('<Item> { for $item in * return $item } </item>'
Слова благодарности всем, которые помогли. Я далее связал проблемы теперь, но я отправлю как отдельные вопросы
Я полагаю, что Вы можете specifiy имя Корневого узла при помощи ДЛЯ пункта.
Например:
select top 1 *
from HumanResources.Department
for XML AUTO, ROOT('RootNodeName')
Бросьте взгляды на книги онлайн для получения дополнительной информации:
Вы не могли только добавить '' / '' как фиксированные тексты в Вашем выборе? Что-то как:
Select
'<Item>',
doc.col.value('node1[1]', 'int') column1,
doc.col.value('node2[1]', 'varchar(50)') column2,
....etc......,
doc.col.query('*'),
'</Item>' --this is the query for getting the whole node
FROM @xml.nodes('//Items/Item') doc(col)
Marc