В этом руководстве по Vue.js я покажу вам, как получить последний элемент массива с помощью метода slice()
.
Вы можете использовать метод slice(-1)
, который возвращает часть массива без изменения исходного массива. Это лучше, чем использование метода pop()
, который изменяет длину исходного массива.
Пример Array.slice(-1)
Предположим, у вас есть массив элементов: YouTube, Spotify, Facebook и Snapchat. Если вы хотите получить последний элемент (Snapchat) и что-то с ним сделать (например, удалить), вы можете использовать метод Array.prototype.slice().
new Vue({
el: "#app",
data: {
items: ['YouTube', 'Spotify', 'Facebook', 'Snapchat']
},
computed: {
lastItem() {
return this.items.slice(-1)[0]
}
}
})
HTML:
<div id="app">
<h2>Items:
<ul>
<li v-for="item in items">
{{ item }}
</li>
</ul>
<br>
<h2>Last item:
<ul>
<li>{{ lastItem }}
</ul>
</div>
Вывод:
Элементы:
YouTube
Spotify
Facebook
Snapchat
Последний элемент:
Snapchat
Пример массива объектов
Вы также можете использовать метод slice()
с массивом объектов.
В этом примере у нас есть массив проектов. Каждый проект имеет название и статус проекта (is_active).
Мы получаем последний проект с помощью метода slice()
в вычисляемом свойстве lastItem()
и затем отображаем его в шаблоне.
new Vue({
el: "#app",
data: {
items: [
{ title: "Project S", is_active: false },
{ title: "Project E", is_active: false },
{ title: "Project Y", is_active: true },
{ title: "Project X", is_active: true }
]
},
computed: {
lastItem() {
return this.items.slice(-1)[0]
}
}
})
HTML:
<div id="app">
<h2>Projects:
<ul>
<li v-for="item in items">
<label>
{{ item.title }}
<span v-if="item.is_active">
(active)
</span>
<span v-else>
(inactive)
</span>
</label>
</li>
</ul>
<br>
<h2>Last project:
<ul>
<li>{{ lastItem.title }}
</ul>
</div>
Вывод:
Проекты:
Проект S (неактивный)
Проект E (неактивный)
Проект Y (активный)
Проект X (активный)
Если вы найдете этот пост полезным, пожалуйста, дайте мне знать в комментариях ниже.
С уважением,
Ренат Галямов
Я основатель Wonder.store и MED24.KZ. Front-end разработчик с более чем 9-летним опытом построения бизнеса как совместно с основателями, так и крупными предприятиями.
Хотите поделиться этим с друзьями?
👉 renatello.com/vue-js-last-item-in-array
PS: Убедитесь, что вы проверяете другие сообщения, например. как проверить, прокрутил ли пользователь вниз в Vue.js, как сделать опрос Vue.js с помощью setInterval(), печатать объект JavaScript/Vue.js в консоли и как получить выбранный значение @change с помощью Vue.js
Подпишитесь на мою рассылку и не пропустите новый пост! Также не забудьте подписаться на мой YouTube канал!
Первоначально опубликовано на https://renatello.com —Как получить последний элемент в массиве Vue.js 29 апреля 2019 г.