firestoreのMapと配列を取得し表示したい
firebaseに以下のようなデータを登録し、ブラウザに表示したいのですが配列部分の表示に苦戦しています。
{ name: "ninja250r", maker: "kawasaki", reserves: [ 0 : [ id: "1", start_datetime: "2019-09-11 12:00:00", end_datetime: "2019-09-11 17:00:00", ] 1 : [ id: "2", start_datetime: "2019-09-11 12:00:00", end_datetime: "2019-09-11 17:00:00", ] ] }
今回node.jsとexpressを使い、以下のようなコードを書いています。
▼routes/bikes.js
router.get('/', function(req, res, next) { db.collection('bikes').get() .then(snapshot => { var bikes = new Array(); snapshot.forEach(doc => { bikes.push({ id: doc.id, bikes: doc.data(), }) }) res.render('bikes', { title: 'all bikes', bike: bikes }); console.log(bikes); }) .catch(err => { next(err); }); });
▼view/bikes.pug
ul each item in bike li id:#{item.id} br | name:#{item.bikes.name} br | reserves:#{item.bikes.reserves}
firebaseコマンドを叩いて起動すると以下のようにログが表示されています
> [ { id: '1', > bikes: { name: 'ninja250r', reserves: [Array], maker: 'kawasaki' } },
またブラウザ側も以下のように表示されます
id:1 name:ninja250r reserves:[object Object],[object Object]
reservesの配列の情報をうまく表示したいのですが、どのように記述すればよいでしょうか?
サブコレクションも試してみたのですが、コレクションを2つ取得しようと記述するとうまくいきませんでした。
よろしくおねがいします。
あなたの回答
tips
プレビュー