Как передать асинхронные данные из контроллера для просмотра в среде NodeJs Adonisjs - PullRequest
0 голосов
/ 12 мая 2018

Я новичок в nodejs и борюсь с платформой firebase и nodejs, которая называется adonisjs.Я хочу спросить, как я могу передать данные с контроллера для просмотра?который является асинхронным, потому что вы знаете, что firebase является асинхронным.

const firebase = use('App/Controllers/Http/FirebaseController')

class CityController {
  index({view}){
    var db = new firebase().admin().firestore();
    var citiesRef = db.collection('city');
    var data = []
    var allCities = citiesRef.get()
          .then(snapshot => {
            snapshot.forEach(doc => {
              data.push({
                title : doc.id,
                data : doc.data()
              })
            });
            // send data from here?  how?
          })
    return view.render('cities', {data : data}); // data is being sent as empty due to async
  }
}

module.exports = CityController

1 Ответ

0 голосов
/ 06 января 2019

Вы можете сделать это, используя AJAX следующим образом:

$ajax.({
 url:Your URl Code Here //http://0.0.0.0:333/api/.../+ ID +/...,
 type:"POST",
 status:....,
 compelete:function(result,status...){
    //do what you want in this function      
     }
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...