问题描述
import {someOffers} from "../const.js";
const createOffer = () => {
const offers = someOffers.map(({name,price}) => `<li class="some__offer">
<span class="some__offer-title">${name}</span>
+
€ <span class="some__offer-price">${price}</span>
</li>`);
return offers;
}
我了解:
-
我们从 const.js 中导入数组 someOffers 。这是7个元素的对象数组,每个(名称,价格,类型)中都有3个键。
-
我们创建箭头功能,以使用适当的键(名称,价格)来创建相同长度的模板文字标记的 offers 数组(与 someOffers ) 。这是通过map()方法完成的,该方法使用参数中写入的函数来更改数组的每个元素:
((({name,price})=>
<li class="some__offer"><span class="some__offer-title">${name}</span>+€ <span class="some__offer-price">${price}</span></li>
)
请为我解释这些参数。尤其是对象文字中的那些。它是否必须与解构有关?
谢谢!
解决方法
是的,它正在破坏someOffers
中的元素。
例如,您可以这样做:
someOffers.map(offer => <div>${offer.name} ${offer.price}</div>)
或
someOffers.map(({name,price}) => <div>${name} ${price}</div>)
希望这个插图可以帮助您了解正在发生的事情。