Массив остается пустым после нажатия

Вы можете назначить их в каком-то «глобальном» файле, который включен в каждую страницу (например, smarty.php - как я видел выше) или какой-либо другой include-файл. Вы даже можете создать новый файл, такой как globals.php, и сделать $smarty->assign() там (для более логичной юзабилити).

Но, очевидно, вы должны создать новый объект $smarty перед назначением всех vars.

2
задан Hamed Javaheri 19 January 2019 в 14:53
поделиться

2 ответа

Вы должны использовать обещания, чтобы контролировать свой код. Попробуйте следующий код и сообщите мне, если есть ошибка.

Recipe.find().then(doc3 => {
    data = doc3;
    for (var i = 0; i < data.length; i++) {
      data[i]['categories'].forEach((item, index) => {
        Recipecat.findOne({_id: item}).then(result => {
          item = result.name;
          catsObjectId.push(item);
        });
      })
    }
    console.log(catsObjectId);
  })
  .catch(err => {
      console.log(err);
  });
0
ответ дан dimitris tseggenes 19 January 2019 в 14:53
поделиться

Вы отправляете пустой массив каждый раз, когда он проходит цикл for. Попробуйте удалить эту строку.

catsObjectId.push([]);
0
ответ дан Derf Mongrel 19 January 2019 в 14:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: