Ошибка Cannot convert undefined or null to object. В чем проблема может быть?
Когда я в SELECT выбираю именно определенного юзера, то получаю вот такую ошибку:
SiteAdmin.vue?d016:1126 Uncaught (in promise) TypeError: Cannot convert undefined or null to object
at Function.entries (<anonymous>)
at Proxy.convertPositions (SiteAdmin.vue?d016:1126)
at _callee3$ (SiteAdmin.vue?d016:951)
at tryCatch (runtime.js?96cf:63)
at Generator.invoke [as _invoke] (runtime.js?96cf:293)
at Generator.eval [as next] (runtime.js?96cf:118)
at asyncGeneratorStep (asyncToGenerator.js?1da1:3)
at _next (asyncToGenerator.js?1da1:25)
Если посмотреть на нее детальнее, то ошибка говорит, что мы не может взять Product Name у пустого объекта, но я не понимаю почему он пустой.. Все данные приходят нормально, и во vue devtools есть все данные тоже, но когда пытаюсь выбрать этого юзера то ошибка, остальные юзеры отрабатывают.

Вот сам код: Тут мы делаем запрос.
async handleUsersSelect(userID) {
console.log("userID", userID);
const userId = userID || this.$store.state.calculator.users;
clearInterval(this.timerId);
this.$store.commit("calculator/setUserSiteAdmin", userId);
await this.getUserForTable(userId);
this.timerId = setInterval(async () => {
this.getUserForTable(userId);
}, 2000);
},
Отсюда получаем данные:
async getUserForTable(userId) {
const marginsResponse = await this.fetchCleintTableInfoByTab({
userId,
url: "/admin/margins",
});
const positionsResponse = await this.fetchCleintTableInfoByTab({
userId,
url: "/admin/positions",
});
const dealsResponce = await this.fetchCleintTableInfoByTab({
userId,
url: "/admin/deals",
});
const ordersResponse = await this.fetchCleintTableInfoByTab({
userId,
url: "/admin/orders",
});
const fundsResponse = await this.fetchCleintTableInfoByTab({
userId,
url: "/admin/funds",
});
this.margins = this.convertMargins(marginsResponse);
this.positions = this.convertPositions(positionsResponse);
this.deals = this.convertDeals(dealsResponce);
this.orders = this.convertOrders(ordersResponse);
this.funds = this.convertFunds(fundsResponse);
console.log("pos", this.positions);
console.log("ord", this.orders);
},
Тут сами поля которые нам приходят с бэкенда:
convertPositions(response) {
let convertPositions = [];
const ProductName = Object.entries(response["Product Name"]);
const Client_Id = Object.entries(response["Client Id"]);
const Amount = Object.entries(response["Amount"]);
const Exchange_Position = Object.entries(response["Exchange Position"]);
const Fin_Result_USD = Object.entries(response["Fin Result USD"]);
const Fut_Hedge_flag = Object.entries(response["Fut Hedge flag"]);
const Initial_Price_USD = Object.entries(response["Initial Price USD"]);
Client_Id.forEach((item, index) => {
convertPositions.push({});
convertPositions[index].ProductName = item[1];
});
ProductName.forEach((item, index) => {
convertPositions[index].Client_Id = item[1];
});
Amount.forEach((item, index) => {
convertPositions[index].Amount = item[1];
});
Exchange_Position.forEach((item, index) => {
convertPositions[index].ExchangePosition = item[1];
});
Fin_Result_USD.forEach((item, index) => {
convertPositions[index].FinResultUSD = item[1];
});
Fut_Hedge_flag.forEach((item, index) => {
convertPositions[index].FutHedgeFlag = item[1];
});
Initial_Price_USD.forEach((item, index) => {
convertPositions[index].InitialPriceUSD = item[1];
});
return convertPositions;
},

