Алгоритмы, ага...
Вас спасет computed и простейшая сортировка по ключу:
// определим функцию сортировки
function compare(a,b) {
if (a.category < b.category)
return -1
if (a.category > b.category)
return 1
return 0
}
// дальше код компонента
posts: [
{
title: 'Fusce ullamcorper tellus',
category: 1,
content: 'Fusce ullamcorper tellus sed maximus rutrum. Donec imperdiet ultrices maximus.',
imgUrl: 'https://raw.githubusercontent.com/vuetifyjs/docs/dev/static/doc-images/cards/drop.jpg'
},{
title: 'Vestibulum condimentum quam',
category: 2,
content: 'At sagittis sapien vulputate. Vivamus laoreet lacus id magna rutrum dapibus.',
imgUrl: 'https://raw.githubusercontent.com/vuetifyjs/docs/dev/static/doc-images/cards/plane.jpg'
},{
title: '[3] Vestibulum condimentum quam',
category: 3,
content: 'At sagittis sapien vulputate. Vivamus laoreet lacus id magna rutrum dapibus.',
imgUrl: 'https://raw.githubusercontent.com/vuetifyjs/docs/dev/static/doc-images/cards/plane.jpg'
},{
title: 'Vestibulum condimentum quam',
category: 2,
content: 'At sagittis sapien vulputate. Vivamus laoreet lacus id magna rutrum dapibus.',
imgUrl: 'https://raw.githubusercontent.com/vuetifyjs/docs/dev/static/doc-images/cards/plane.jpg'
},{
title: 'Vestibulum condimentum quam',
category: 1,
content: 'At sagittis sapien vulputate. Vivamus laoreet lacus id magna rutrum dapibus.',
imgUrl: 'https://raw.githubusercontent.com/vuetifyjs/docs/dev/static/doc-images/cards/plane.jpg'
},
// И так может быть много и получаем данные без сортировки
]
// Много кода
computed: {
sortedPosts () {
this.posts.sort(compare)
return this.posts
}
}
Все, магия свершилась. Вместо
posts пользуйтесь теперь
sortedPosts для отображения.