Как разрешить правило eslint "require-atomic-updates"? - PullRequest
0 голосов
/ 08 ноября 2019

Я часто понимаю причины, лежащие в основе правил, и способы их устранения, но я не понимаю, как их устранить.

Стоит упомянуть, что я прочитал документы дляправило, но оно не

Это ошибка, которую я получаю:

Possible race condition: `req.meta.pageImage` might be reassigned based on an outdated value of `req.meta.pageImage`

И этот код вызывает ее:

async function retailerAction(req, res) {
  const { groupId } = req.params;
  let group;
  try {
    const result = await trinidad.jupiter.callAsync({
      method: 'GET',
      path: `/marketplace/groups/${groupId}?include=group.imageId,group.name,group.description`,
      req
    });
    group = result.group;
  } catch (e) {}

  if (group.imageId) {
    req.meta.pageImage = group.imageId; // <--- error
  } else {
    req.meta.pageImage = null; // <--- error
  }

  req.renderModel = {  // <--- error
    title: { text: group.name },
    metaDescription: {
      description: normalizeDraftjsText(group.description)
    }
  };

  routeHandler(req, res);
}

1 Ответ

0 голосов
/ 16 ноября 2019

Я пока не понимаю этого на 100%, но я имею дело с той же проблемой и читаю документы, и почти уверен, что это вызвано тем, что вы присваиваете изменчивый let group ПЕРЕД вашим оператором ожидания.

Попробуйте назначить его как const group после этого await, и при необходимости измените другой код.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...