Использование динамического имени в v: связать внутри v-for - PullRequest
1 голос
/ 12 марта 2019

Итак, в основном у меня есть массив продуктов и массив цен, в котором есть массив product_id (а внутри этого массива у меня есть данные price и priceAfterDiscount).Проблема в том, что я не могу передать эти данные с помощью v-bind.(См .: цена = "цены" .product _ $ {product.id} .price` "). Вместо того, чтобы попасть в массив, будет отображаться строка fe values.product_8.price.

Заранее спасибо.Код ниже

<ProductCard v-for="product in products.data"
  :product="product"
  :key="product.id"
  :userСurrency="userСurrency"
  :user-currency-code="userCurrencyCode" 
  :price="`prices.product_${product.id}.price`" />   

1 Ответ

4 голосов
/ 12 марта 2019

Я немного запутался?prices теперь массив или объект?Я возьму объект из-за его использования.В этом случае вы можете использовать оператор индексации для передачи строки, например:

<ProductCard v-for="product in products.data"
  :product="product"
  :key="product.id"
  :userСurrency="userСurrency"
  :user-currency-code="userCurrencyCode" 
  :price="prices[`product_${product.id}`].price" />
...