Я не до конца понял структуру v-for, как решить?

0

Vue.js курс.
8 урок(практическое задание).

Нужно указать <li v-for="(actor, index) in actors">
{{ actor.name }}
</li>

Почему actor.name, если запись приложения следующая:

var app = new Vue({
el: '#app',
data: {
message: 'Hello, FructCode!',
items: [
{ title: 'Apple' },
{ title: 'Lemon' }
],
product: {
brand: 'Apple',
model: 'XR',
price: 1000
},
actors: [
{ name: 'Morgan Freeman' },
{ name: 'Leonardo DiCaprio' },
{ name: 'Brad Pitt' },
{ name: 'Michael Caine' },
{ name: 'Robert De Niro' }
],


Разве не actors.name?
Или я чего-то не понял?
/я не до конца понял структуру v-for="(actor, index) in actors", и не до конца понимаю, что там за что отвечает, кроме index'a, и т.д., но я уверен, что в данном случае, это какая-то ошибка. Если нет, поправьте меня. Почему в скобках actor, и его нужно указывать? Как он находит в таком случае actors?/

vuejs

3 ответов

1

Смотри на цикл:

<li v-for="(actor, index) in actors">

actors - это объект из которого формируется цикл, actor - это каждый элемент объекта.

Посмотри еще раз про директиву v-for:

https://fructcode.com/ru/courses/vuejs/v-for-directive/

1
То есть, например, я мог бы использовать такую запись?

Да, если не нужен index.

Цикл создаётся из объекта actors, а обращаться к нему я буду как actor?

Внутри цикла да, можно обращаться к actor. Если цикл так будет выглядеть:

<li v-for="item in actors">

вместо actor будет обращение к item, т.е. как угодно можно назвать переменную для обращения внутри цикла, но еще сам объект actors называется, логично назвать переменную для использования внутри цикла actor.

0
<li v-for="actor in actors">

То есть, например, я мог бы использовать такую запись?
(index не используется в данном случае, потому можно и убрать)

Цикл создаётся из объекта actors, а обращаться к нему я буду как actor?
Отсюда следует, что всё то, что будет храниться в actors, я смогу вызывать при помощи actor., или actors. ?

Sign up or Log in to write an answer