Как видите, объект json имеет следующую схему (пример):
{
"unique_image_url_prefixes": [],
"products_and_categories": {
"Shirts": [
{
"name": "Bowling Zip S/S Shirt",
"id": 6599,
"image_url": "//d17ol771963kd3.cloudfront.net/185441/ca/yHl3_5v9a-A.jpg",
"image_url_hi": "//assets.supremenewyork.com/185441/rc/yHl3_5v9a-A.jpg",
"price": 1870000,
"sale_price": 0,
"new_item": true,
"position": 9,
"category_name": "Shirts"
},
...
]
},
...
"release_date": "04/11/2020",
"release_week": "7SS20"
}
У него нет свойства с именем shirts
на первом уровне объекта. Я думаю, что вы хотите получить доступ к массиву Shirts
, если оно истинно, то Shirts
является массивом, и массив не будет содержать свойство name
, вам нужно l oop через все элементы массива чтобы получить их name
.
...
let res = await rp(options);
const shirts = res.body.products_and_categories.Shirts; // products_and_categories is the firs level. Store in shirts variable
this.shirts = shirts.map(s => s.name); // get names of all shirts
console.log(this.shirts);
...